Function at 0x44cd40
Capabilities:
Create thread

Disassembly:
mov eax, 0xc9534
call fcn.0045d1f0
mov eax, dword [0x492794]
xor eax, esp
mov dword [esp + 0xc9530], eax
mov eax, dword [esp + 0xc9538]
push ebx
push ebp
mov ebp, dword [esp + 0xc954c]
push esi
mov esi, dword [0x47f104]
push edi
push 0x2dc6c0
xor ebx, ebx
push ebx
mov dword [0x17435cc], eax
call esi
cmp eax, ebx
mov dword [0x173a5b8], eax
jne 0x44cd9c
push str.WaveBuffer
call fcn.00408d80
add esp, 4
xor eax, eax
jmp 0x44d07e
push 0x2dc6c0
push ebx
mov dword [0x17435c4], eax
call esi
cmp eax, ebx
mov dword [0x17435d0], eax
jne 0x44cdc6
push 0x484be0
call fcn.00408d80
add esp, 4
xor eax, eax
jmp 0x44d07e
cmp ebp, ebx
mov dword [0x16d6b1c], eax
je 0x44cf47
mov eax, dword [esp + 0xc9550]
lea esi, [esp + 0xc7540]
mov ecx, eax
sub esi, eax
mov dl, byte [ecx]
mov byte [esi + ecx], dl
add ecx, 1
cmp dl, bl
jne 0x44cde5
lea edx, [esp + 0xc8540]
sub edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
cmp cl, bl
jne 0x44ce00
mov eax, ebp
mov edx, ebp
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x44ce10
lea edi, [esp + 0xc7540]
sub eax, edx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x44ce25
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
mov eax, ebp
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x44ce43
lea edi, [esp + 0xc8540]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
lea ebx, [ebx]
mov cl, byte [edi + 1]
add edi, 1
cmp cl, bl
jne 0x44ce60
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [esp + 0xc7540]
rep movsb byte es:[edi], byte [esi]
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
cmp cl, bl
jne 0x44ce82
mov ecx, dword [str..idx]
mov dl, byte [0x482050]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0xc8540]
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
cmp cl, bl
jne 0x44cea7
mov ecx, dword [str..pak]
mov dl, byte [0x482048]
mov dword [eax], ecx
mov byte [eax + 4], dl
push 0x63a98
lea eax, [esp + 0xc8544]
push eax
lea ecx, [esp + 0xc7548]
push ecx
mov eax, 0x63a98
call fcn.0045d1f0
lea edx, [esp + 0x63ab4]
mov edi, esp
mov ecx, 0x18ea6
mov esi, 0x16d6b20
push edx
rep movsd dword es:[edi], dword [esi]
call fcn.0041de60
add esp, 0x63aa4
push eax
lea eax, [esp + 0x63ab0]
push eax
call fcn.0045d970
push 0x63a98
lea ecx, [esp + 0x63ab8]
push ecx
push 0x16d6b20
call fcn.0045d970
add esp, 0x18
cmp dword [0x16d8b20], 0xffffffff
jne 0x44cf47
push str.Wave
call fcn.00408d80
add esp, 4
xor eax, eax
jmp 0x44d07e
push str.EAGLS.DLL
call dword [0x47f11c]
cmp eax, ebx
mov dword [0x16d6a18], eax
jne 0x44cf6f
push 0x484b80
call fcn.00408d80
add esp, 4
xor eax, eax
jmp 0x44d07e
push str.EGLS_GetFunction
push eax
call dword [0x47f094]
cmp eax, ebx
mov dword [0x17435d4], eax
jne 0x44cf98
push 0x484b48
call fcn.00408d80
add esp, 4
xor eax, eax
jmp 0x44d07e
push 0x16d5980
call eax
mov edx, dword [0xff4b04]
add esp, 4
push edx
push 9
push 2
push 0x10
push 0xac44
call dword [0x47f278]
push eax
call dword [0x16d5984]
test eax, eax
jne 0x44cfd9
push 0x484b28
call fcn.00408d80
add esp, 4
xor eax, eax
jmp 0x44d07e
push 1
call fcn.0044bbc0
add esp, 4
test eax, eax
jne 0x44cffb
push str.Sound
call fcn.00408d80
add esp, 4
xor eax, eax
jmp 0x44d07e
push 0x16d59e4
push ebx
mov dword [0x16d6a20], ebx
mov dword [0x16d6a3c], ebx
mov dword [0x16d6a58], ebx
mov dword [0x16d6a74], ebx
mov dword [0x16d6a90], ebx
mov dword [0x16d6aac], ebx
mov dword [0x16d6ac8], ebx
mov dword [0x16d6ae4], ebx
mov dword [0x16d6b00], ebx
call fcn.0044e1e0
push eax
push 0x44c440
push ebx
push ebx
call fcn.0045e213
add esp, 0x18
push 0xfffffffffffffffe
push eax
mov dword [0x16d69e8], eax
call dword [0x47f0e4]
push ebx
push ebx
push ebx
push ebx
push 8
push 2
push str.loop
call fcn.0044c570
add esp, 0x1c
mov dword [0x17435d8], 1
mov eax, 1
mov ecx, dword [esp + 0xc9540]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0045d1d4
add esp, 0xc9534
ret