<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://bf2tech.uturista.pt/index.php?action=history&amp;feed=atom&amp;title=ReverseEngineering</id>
	<title>ReverseEngineering - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://bf2tech.uturista.pt/index.php?action=history&amp;feed=atom&amp;title=ReverseEngineering"/>
	<link rel="alternate" type="text/html" href="https://bf2tech.uturista.pt/index.php?title=ReverseEngineering&amp;action=history"/>
	<updated>2026-08-06T01:11:30Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://bf2tech.uturista.pt/index.php?title=ReverseEngineering&amp;diff=164&amp;oldid=prev</id>
		<title>UTurista at 08:05, 12 August 2022</title>
		<link rel="alternate" type="text/html" href="https://bf2tech.uturista.pt/index.php?title=ReverseEngineering&amp;diff=164&amp;oldid=prev"/>
		<updated>2022-08-12T08:05:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 08:05, 12 August 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l227&quot;&gt;Line 227:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 227:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|+ &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;BF2OpenAL&lt;/del&gt;.dll&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|+ &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;BF2VoipServer&lt;/ins&gt;.dll&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;! Function Name !! Address !! Relative Address !! Ordinal&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;! Function Name !! Address !! Relative Address !! Ordinal&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>UTurista</name></author>
	</entry>
	<entry>
		<id>https://bf2tech.uturista.pt/index.php?title=ReverseEngineering&amp;diff=163&amp;oldid=prev</id>
		<title>UTurista: Created page with &quot;DLLs {| class=&quot;wikitable&quot; |+ AIDLL.dll |- ! Function Name !! Address !! Relative Address !! Ordinal |- | deinitDll	|| 0x10024630	|| 0x00024630	|| 1 (0x1)	 |- | initDll	|| 0x100241d0	|| 0x000241d0	|| 2 (0x2)	 |}  {| class=&quot;wikitable&quot; |+ AIDLL_w32ded.dll |- ! Function Name !! Address !! Relative Address !! Ordinal |- | deinitDll	|| 0x100637e0|| 0x100637e0|| 1 (0x1)	 |- | initDll	|| 0x10063340|| 0x00063340	|| 2 (0x2)	 |}  {| class=&quot;wikitable&quot; |+ BF2Audio.dll |- ! Function N...&quot;</title>
		<link rel="alternate" type="text/html" href="https://bf2tech.uturista.pt/index.php?title=ReverseEngineering&amp;diff=163&amp;oldid=prev"/>
		<updated>2022-08-12T08:04:34Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;DLLs {| class=&amp;quot;wikitable&amp;quot; |+ AIDLL.dll |- ! Function Name !! Address !! Relative Address !! Ordinal |- | deinitDll	|| 0x10024630	|| 0x00024630	|| 1 (0x1)	 |- | initDll	|| 0x100241d0	|| 0x000241d0	|| 2 (0x2)	 |}  {| class=&amp;quot;wikitable&amp;quot; |+ AIDLL_w32ded.dll |- ! Function Name !! Address !! Relative Address !! Ordinal |- | deinitDll	|| 0x100637e0|| 0x100637e0|| 1 (0x1)	 |- | initDll	|| 0x10063340|| 0x00063340	|| 2 (0x2)	 |}  {| class=&amp;quot;wikitable&amp;quot; |+ BF2Audio.dll |- ! Function N...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;DLLs&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ AIDLL.dll&lt;br /&gt;
|-&lt;br /&gt;
! Function Name !! Address !! Relative Address !! Ordinal&lt;br /&gt;
|-&lt;br /&gt;
| deinitDll	|| 0x10024630	|| 0x00024630	|| 1 (0x1)	&lt;br /&gt;
|-&lt;br /&gt;
| initDll	|| 0x100241d0	|| 0x000241d0	|| 2 (0x2)	&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ AIDLL_w32ded.dll&lt;br /&gt;
|-&lt;br /&gt;
! Function Name !! Address !! Relative Address !! Ordinal&lt;br /&gt;
|-&lt;br /&gt;
| deinitDll	|| 0x100637e0|| 0x100637e0|| 1 (0x1)	&lt;br /&gt;
|-&lt;br /&gt;
| initDll	|| 0x10063340|| 0x00063340	|| 2 (0x2)	&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ BF2Audio.dll&lt;br /&gt;
|-&lt;br /&gt;
! Function Name !! Address !! Relative Address !! Ordinal&lt;br /&gt;
|-&lt;br /&gt;
| getSoundEngine	|| 0x10007ad0	|| 0x00007ad0	|| 1 (0x1)	&lt;br /&gt;
|-&lt;br /&gt;
| shutdownSoundEngine	|| 0x10007b80	|| 0x00007b80	|| 2 (0x2)	&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ BF2OpenAL.dll&lt;br /&gt;
|-&lt;br /&gt;
! Function Name !! Address !! Relative Address !! Ordinal&lt;br /&gt;
|-&lt;br /&gt;
|  alBuffer3f  ||  0x100092a0  ||  0x000092a0  ||  3 (0x3)&lt;br /&gt;
|-&lt;br /&gt;
|  alBuffer3i  ||  0x100092a0  ||  0x000092a0  ||  4 (0x4)&lt;br /&gt;
|-&lt;br /&gt;
|  alBufferData  ||  0x10008700  ||  0x00008700  ||  5 (0x5)&lt;br /&gt;
|-&lt;br /&gt;
|  alBufferf  ||  0x100092a0  ||  0x000092a0  ||  6 (0x6)&lt;br /&gt;
|-&lt;br /&gt;
|  alBufferfv  ||  0x100092a0  ||  0x000092a0  ||  7 (0x7)&lt;br /&gt;
|-&lt;br /&gt;
|  alBufferi  ||  0x100092a0  ||  0x000092a0  ||  8 (0x8)&lt;br /&gt;
|-&lt;br /&gt;
|  alBufferiv  ||  0x100092a0  ||  0x000092a0  ||  9 (0x9)&lt;br /&gt;
|-&lt;br /&gt;
|  alcCaptureCloseDevice  ||  0x1002f260  ||  0x0002f260  ||  76 (0x4c)&lt;br /&gt;
|-&lt;br /&gt;
|  alcCaptureOpenDevice  ||  0x10030c00  ||  0x00030c00  ||  77 (0x4d)&lt;br /&gt;
|-&lt;br /&gt;
|  alcCaptureSamples  ||  0x1002f3d0  ||  0x0002f3d0  ||  78 (0x4e)&lt;br /&gt;
|-&lt;br /&gt;
|  alcCaptureStart  ||  0x1002f370  ||  0x0002f370  ||  79 (0x4f)&lt;br /&gt;
|-&lt;br /&gt;
|  alcCaptureStop  ||  0x1002f3a0  ||  0x0002f3a0  ||  80 (0x50)&lt;br /&gt;
|-&lt;br /&gt;
|  alcCloseDevice  ||  0x1002f9e0  ||  0x0002f9e0  ||  81 (0x51)&lt;br /&gt;
|-&lt;br /&gt;
|  alcCreateContext  ||  0x100360c0  ||  0x000360c0  ||  82 (0x52)&lt;br /&gt;
|-&lt;br /&gt;
|  alcDestroyContext  ||  0x1002f840  ||  0x0002f840  ||  83 (0x53)&lt;br /&gt;
|-&lt;br /&gt;
|  alcGetContextsDevice  ||  0x1002f900  ||  0x0002f900  ||  84 (0x54)&lt;br /&gt;
|-&lt;br /&gt;
|  alcGetCurrentContext  ||  0x1002f8d0  ||  0x0002f8d0  ||  85 (0x55)&lt;br /&gt;
|-&lt;br /&gt;
|  alcGetEnumValue  ||  0x1002f810  ||  0x0002f810  ||  86 (0x56)&lt;br /&gt;
|-&lt;br /&gt;
|  alcGetError  ||  0x1002f6c0  ||  0x0002f6c0  ||  87 (0x57)&lt;br /&gt;
|-&lt;br /&gt;
|  alcGetIntegerv  ||  0x10031010  ||  0x00031010  ||  88 (0x58)&lt;br /&gt;
|-&lt;br /&gt;
|  alcGetProcAddress  ||  0x1002f790  ||  0x0002f790  ||  89 (0x59)&lt;br /&gt;
|-&lt;br /&gt;
|  alcGetString  ||  0x100331e0  ||  0x000331e0  ||  90 (0x5a)&lt;br /&gt;
|-&lt;br /&gt;
|  alcIsExtensionPresent  ||  0x1002f6e0  ||  0x0002f6e0  ||  91 (0x5b)&lt;br /&gt;
|-&lt;br /&gt;
|  alcMakeContextCurrent  ||  0x1002f950  ||  0x0002f950  ||  92 (0x5c)&lt;br /&gt;
|-&lt;br /&gt;
|  alcOpenDevice  ||  0x10033490  ||  0x00033490  ||  93 (0x5d)&lt;br /&gt;
|-&lt;br /&gt;
|  alcProcessContext  ||  0x1002f6d0  ||  0x0002f6d0  ||  94 (0x5e)&lt;br /&gt;
|-&lt;br /&gt;
|  alcSuspendContext  ||  0x1002f6d0  ||  0x0002f6d0  ||  95 (0x5f)&lt;br /&gt;
|-&lt;br /&gt;
|  alDeleteBuffers  ||  0x10009680  ||  0x00009680  ||  10 (0xa)&lt;br /&gt;
|-&lt;br /&gt;
|  alDeleteSources  ||  0x1001c450  ||  0x0001c450  ||  11 (0xb)&lt;br /&gt;
|-&lt;br /&gt;
|  alDisable  ||  0x1001e930  ||  0x0001e930  ||  12 (0xc)&lt;br /&gt;
|-&lt;br /&gt;
|  alDistanceModel  ||  0x1001f350  ||  0x0001f350  ||  13 (0xd)&lt;br /&gt;
|-&lt;br /&gt;
|  alDopplerFactor  ||  0x1001f170  ||  0x0001f170  ||  14 (0xe)&lt;br /&gt;
|-&lt;br /&gt;
|  alDopplerVelocity  ||  0x1001f210  ||  0x0001f210  ||  15 (0xf)&lt;br /&gt;
|-&lt;br /&gt;
|  alEnable  ||  0x1001e930  ||  0x0001e930  ||  16 (0x10)&lt;br /&gt;
|-&lt;br /&gt;
|  alGenBuffers  ||  0x10008570  ||  0x00008570  ||  17 (0x11)&lt;br /&gt;
|-&lt;br /&gt;
|  alGenSources  ||  0x1001c110  ||  0x0001c110  ||  18 (0x12)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBoolean  ||  0x1001e9b0  ||  0x0001e9b0  ||  19 (0x13)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBooleanv  ||  0x1001ed40  ||  0x0001ed40  ||  20 (0x14)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBuffer3f  ||  0x10009500  ||  0x00009500  ||  21 (0x15)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBuffer3i  ||  0x10009500  ||  0x00009500  ||  22 (0x16)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBufferf  ||  0x10009300  ||  0x00009300  ||  23 (0x17)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBufferfv  ||  0x10009300  ||  0x00009300  ||  24 (0x18)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBufferi  ||  0x10009380  ||  0x00009380  ||  25 (0x19)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetBufferiv  ||  0x10009590  ||  0x00009590  ||  26 (0x1a)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetDouble  ||  0x1001eaa0  ||  0x0001eaa0  ||  27 (0x1b)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetDoublev  ||  0x1001ee30  ||  0x0001ee30  ||  28 (0x1c)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetEnumValue  ||  0x10018ca0  ||  0x00018ca0  ||  29 (0x1d)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetError  ||  0x10018aa0  ||  0x00018aa0  ||  30 (0x1e)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetFloat  ||  0x1001eb90  ||  0x0001eb90  ||  31 (0x1f)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetFloatv  ||  0x1001ef00  ||  0x0001ef00  ||  32 (0x20)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetInteger  ||  0x1001ec70  ||  0x0001ec70  ||  33 (0x21)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetIntegerv  ||  0x1001efd0  ||  0x0001efd0  ||  34 (0x22)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetListener3f  ||  0x10019460  ||  0x00019460  ||  35 (0x23)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetListener3i  ||  0x100196a0  ||  0x000196a0  ||  36 (0x24)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetListenerf  ||  0x100193c0  ||  0x000193c0  ||  37 (0x25)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetListenerfv  ||  0x10019510  ||  0x00019510  ||  38 (0x26)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetListeneri  ||  0x10019630  ||  0x00019630  ||  39 (0x27)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetListeneriv  ||  0x10019780  ||  0x00019780  ||  40 (0x28)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetProcAddress  ||  0x10018c40  ||  0x00018c40  ||  41 (0x29)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetSource3f  ||  0x10019f20  ||  0x00019f20  ||  42 (0x2a)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetSource3i  ||  0x10019ff0  ||  0x00019ff0  ||  43 (0x2b)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetSourcef  ||  0x1001c600  ||  0x0001c600  ||  44 (0x2c)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetSourcefv  ||  0x1001c8f0  ||  0x0001c8f0  ||  45 (0x2d)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetSourcei  ||  0x1001ca50  ||  0x0001ca50  ||  46 (0x2e)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetSourceiv  ||  0x1001cd80  ||  0x0001cd80  ||  47 (0x2f)&lt;br /&gt;
|-&lt;br /&gt;
|  alGetString  ||  0x1001f0b0  ||  0x0001f0b0  ||  48 (0x30)&lt;br /&gt;
|-&lt;br /&gt;
|  alIsBuffer  ||  0x100086a0  ||  0x000086a0  ||  49 (0x31)&lt;br /&gt;
|-&lt;br /&gt;
|  alIsEnabled  ||  0x1001e970  ||  0x0001e970  ||  50 (0x32)&lt;br /&gt;
|-&lt;br /&gt;
|  alIsExtensionPresent  ||  0x10018b20  ||  0x00018b20  ||  51 (0x33)&lt;br /&gt;
|-&lt;br /&gt;
|  alIsSource  ||  0x100198c0  ||  0x000198c0  ||  52 (0x34)&lt;br /&gt;
|-&lt;br /&gt;
|  alListener3f  ||  0x10018e10  ||  0x00018e10  ||  53 (0x35)&lt;br /&gt;
|-&lt;br /&gt;
|  alListener3i  ||  0x10019200  ||  0x00019200  ||  54 (0x36)&lt;br /&gt;
|-&lt;br /&gt;
|  alListenerf  ||  0x10018d00  ||  0x00018d00  ||  55 (0x37)&lt;br /&gt;
|-&lt;br /&gt;
|  alListenerfv  ||  0x10018f40  ||  0x00018f40  ||  56 (0x38)&lt;br /&gt;
|-&lt;br /&gt;
|  alListeneri  ||  0x10019190  ||  0x00019190  ||  57 (0x39)&lt;br /&gt;
|-&lt;br /&gt;
|  alListeneriv  ||  0x10019280  ||  0x00019280  ||  58 (0x3a)&lt;br /&gt;
|-&lt;br /&gt;
|  alSource3f  ||  0x10019940  ||  0x00019940  ||  59 (0x3b)&lt;br /&gt;
|-&lt;br /&gt;
|  alSource3i  ||  0x10019b70  ||  0x00019b70  ||  60 (0x3c)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourcef  ||  0x1001d2f0  ||  0x0001d2f0  ||  71 (0x47)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourcefv  ||  0x1001da90  ||  0x0001da90  ||  72 (0x48)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourcei  ||  0x1001dc00  ||  0x0001dc00  ||  73 (0x49)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourceiv  ||  0x1001e530  ||  0x0001e530  ||  74 (0x4a)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourcePause  ||  0x1001a100  ||  0x0001a100  ||  61 (0x3d)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourcePausev  ||  0x1001a190  ||  0x0001a190  ||  62 (0x3e)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourcePlay  ||  0x1001e670  ||  0x0001e670  ||  63 (0x3f)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourcePlayv  ||  0x1001e7b0  ||  0x0001e7b0  ||  64 (0x40)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourceQueueBuffers  ||  0x1001cf60  ||  0x0001cf60  ||  65 (0x41)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourceRewind  ||  0x1001a440  ||  0x0001a440  ||  66 (0x42)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourceRewindv  ||  0x1001a500  ||  0x0001a500  ||  67 (0x43)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourceStop  ||  0x1001a270  ||  0x0001a270  ||  68 (0x44)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourceStopv  ||  0x1001a330  ||  0x0001a330  ||  69 (0x45)&lt;br /&gt;
|-&lt;br /&gt;
|  alSourceUnqueueBuffers  ||  0x1001a620  ||  0x0001a620  ||  70 (0x46)&lt;br /&gt;
|-&lt;br /&gt;
|  alSpeedOfSound  ||  0x1001f2b0  ||  0x0001f2b0  ||  75 (0x4b)&lt;br /&gt;
|-&lt;br /&gt;
|  EAXGet  ||  0x1000b7d0  ||  0x0000b7d0  ||  1 (0x1)&lt;br /&gt;
|-&lt;br /&gt;
|  EAXSet  ||  0x1000ba90  ||  0x0000ba90  ||  2 (0x2)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ BF2OpenAL.dll&lt;br /&gt;
|-&lt;br /&gt;
! Function Name !! Address !! Relative Address !! Ordinal&lt;br /&gt;
|-&lt;br /&gt;
|  public: __thiscall BF2VoipServer::CBF2VoipServer::CBF2VoipServer(void)  ||  0x10001380  ||  0x00001380  ||  1 (0x1)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: __thiscall BF2VoipServer::CBF2VoipServer::~CBF2VoipServer(void)  ||  0x100013d0  ||  0x000013d0  ||  2 (0x2)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: bool __thiscall BF2VoipServer::CBF2VoipServer::IsRunning(void)  ||  0x100011a0  ||  0x000011a0  ||  5 (0x5)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: class BF2VoipServer::CBF2VoipServerInstance * __thiscall BF2VoipServer::CBF2VoipServer::getInstance(unsigned int)  ||  0x100012a0  ||  0x000012a0  ||  10 (0xa)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: enum VOIP::VRESULT __thiscall BF2VoipServer::CBF2VoipServer::CreateInstance(unsigned int,class std::basic_string&amp;lt;char,struct std::char_traits&amp;lt;char&amp;gt;,class std::allocator&amp;lt;char&amp;gt; &amp;gt;,int &amp;amp;)  ||  0x10001680  ||  0x00001680  ||  3 (0x3)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: enum VOIP::VRESULT __thiscall BF2VoipServer::CBF2VoipServer::Initialize(bool)  ||  0x100011b0  ||  0x000011b0  ||  4 (0x4)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: enum VOIP::VRESULT __thiscall BF2VoipServer::CBF2VoipServer::ReleaseAllInstances(void)  ||  0x10001500  ||  0x00001500  ||  6 (0x6)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: enum VOIP::VRESULT __thiscall BF2VoipServer::CBF2VoipServer::ReleaseInstance(int)  ||  0x10001450  ||  0x00001450  ||  7 (0x7)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: enum VOIP::VRESULT __thiscall BF2VoipServer::CBF2VoipServer::Shutdown(void)  ||  0x100015d0  ||  0x000015d0  ||  8 (0x8)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: enum VOIP::VRESULT __thiscall BF2VoipServer::CBF2VoipServer::Update(void)  ||  0x100012d0  ||  0x000012d0  ||  9 (0x9)&lt;br /&gt;
 |-&lt;br /&gt;
|  public: unsigned int __thiscall BF2VoipServer::CBF2VoipServer::getNumInstances(void)  ||  0x10001280  ||  0x00001280  ||  11 (0xb)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>UTurista</name></author>
	</entry>
</feed>