Function at 0x4ac7f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x570
mov edi, ecx
mov dword [esp + 0x38], edx
push 0xad10b8
call fcn.005331a4
mov eax, dword [0xad10d8]
test eax, 0x7fffffff
jne 0x4acc08
xor ebx, ebx
movzx eax, byte [0xad10bc]
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 8
mov dword [esp + 0x14], 0
call fcn.005332a4
mov dword [esp + 0x24], eax
call fcn.005332b4
mov dword [esp + 0x20], eax
lea esi, [esp + 0x290]
push 0x2d0
push 0
push esi
call fcn.0053b950
add esp, 0xc
push esi
call fcn.0053341c
call fcn.004c6fa0
test eax, eax
mov dword [esp + 0x2c], edi
je 0x4ac90d
mov esi, ebx
mov edi, 8
movzx eax, byte [esp + 0x162]
mov ecx, dword [esp + 0x2c]
movsd xmm0, qword [esp + 0x290]
mov byte [ecx + 0x1b], al
movzx eax, word [esp + 0x160]
mov word [ecx + 0x19], ax
mov eax, dword [esp + 0x298]
mov dword [ecx], 0
movsd qword [ecx + 0xc], xmm0
mov dword [ecx + 0x14], eax
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4ac8da
imul eax, eax, 0x130
push 8
push eax
push edi
call fcn.00403b20
add esp, 0xc
mov eax, esi
test al, al
jne 0x4acbf6
mov eax, dword [0xad10d8]
test eax, 0x7fffffff
je 0x4acbf6
call fcn.004c5e10
test al, al
jne 0x4acbf6
mov byte [0xad10bc], 1
jmp 0x4acbf6
mov eax, dword [0xad114c]
mov dword [esp + 0x28], edx
mov dword [esp + 0x1c], ebx
test eax, eax
mov dword [esp + 8], eax
je 0x4ac92e
mov esi, dword [0xad1150]
test esi, esi
jne 0x4ac97c
jmp 0x4ac95d
push 0xa4f8f7
push dword [0xad1138]
call fcn.0053332c
test eax, eax
mov dword [esp + 8], eax
je 0x4acdc7
mov eax, dword [esp + 8]
mov dword [0xad114c], eax
mov esi, dword [0xad1150]
test esi, esi
jne 0x4ac97c
push 0xa4f910
push dword [0xad1138]
call fcn.0053332c
test eax, eax
je 0x4acdc7
mov esi, eax
mov dword [0xad1150], eax
call fcn.005332a4
mov ebx, dword [0xad1154]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], esi
test ebx, ebx
jne 0x4ac9b2
push 0xa4f923
push dword [0xad1138]
call fcn.0053332c
test eax, eax
je 0x4acc17
mov ebx, eax
mov dword [0xad1154], eax
lea edi, [esp + 0x48]
lea eax, [esp + 0x50]
push 0x100
push 0
push eax
call fcn.0053b950
add esp, 0xc
movsd xmm0, qword [0xa4a330]
mov eax, dword [esp + 0x344]
mov ecx, dword [esp + 0x348]
mov edx, dword [esp + 0x354]
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0
movsd qword [esp + 0x150], xmm0
mov dword [esp + 0x158], 0
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], 0
mov dword [esp + 0x54], 3
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], 0
mov dword [esp + 0x84], 3
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0
mov dword [esp + 0x74], 3
push 0
push 0
push esi
push dword [esp + 0x14]
push 0
lea eax, [esp + 0x2a4]
push eax
push edi
push dword [esp + 0x3c]
push dword [esp + 0x44]
push 0x14c
call ebx
cmp eax, 1
jne 0x4acb89
xor edi, edi
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x18], 8
mov dword [esp], 0
jmp 0x4acb15
mov ecx, dword [esp + 0x18]
imul eax, esi, 0x130
mov dword [esp + 0x18], ecx
add eax, ecx
push 0x130
push edi
push eax
call fcn.0053b960
add esp, 0xc
mov ecx, dword [esp]
mov edx, dword [esp + 4]
mov eax, dword [esp + 0x38]
inc esi
mov ebx, esi
mov dword [esp + 0x14], esi
cmp ecx, 1
cmove ebx, edx
cmp dword [esp + 0x48], eax
mov eax, 1
cmovne ebx, edx
cmove ecx, eax
mov dword [esp], ecx
push 0
push 0
mov edi, esi
mov esi, dword [esp + 0x3c]
push esi
push dword [esp + 0x14]
push 0
lea eax, [esp + 0x2a4]
push eax
lea eax, [esp + 0x60]
push eax
push dword [esp + 0x3c]
push dword [esp + 0x44]
push 0x14c
call dword [esp + 0x64]
cmp eax, 1
mov dword [esp + 4], ebx
jne 0x4acb9a
push 0
push dword [esp + 0x4c]
push dword [esp + 0x38]
call esi
mov dword [esp + 0x158], eax
push 0x120
lea eax, [esp + 0x44]
push eax
lea ebx, [esp + 0x168]
push ebx
call fcn.0053b960
add esp, 0xc
cmp edi, dword [esp + 0xc]
mov esi, edi
mov edi, ebx
mov dword [esp + 0x280], 0
mov dword [esp + 0x284], 4
mov dword [esp + 0x288], 0
jne 0x4aca90
lea ecx, [esp + 0xc]
mov edx, esi
call fcn.00499890
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
jmp 0x4aca94
xor edi, edi
mov dword [esp + 0x18], 8
mov dword [esp], 0
mov dword [esp + 4], edi
mov edi, dword [esp + 0x18]
push dword [esp + 0x28]
call fcn.005333fc
cmp dword [esp + 4], 0
mov esi, dword [esp + 0x1c]
je 0x4ac887
mov eax, dword [esp]
mov ecx, dword [esp + 0x2c]
movsd xmm0, qword [esp + 0xc]
mov edx, dword [esp + 0x14]
test eax, eax
mov dword [ecx], 2
mov dword [ecx + 4], 0
cmove ebx, eax
mov dword [ecx + 8], ebx
movsd qword [ecx + 0xc], xmm0
mov dword [ecx + 0x14], edx
mov byte [ecx + 0x18], 0
mov eax, esi
test al, al
je 0x4ac8e4
push 0xad10b8
call fcn.00533404
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.004c5e10
mov ebx, eax
xor bl, 1
jmp 0x4ac821
lea eax, [esp + 0x50]
push 0x100
push 0
push eax
call fcn.0053b950
add esp, 0xc
mov eax, dword [esp + 0x344]
mov ecx, dword [esp + 0x348]
mov edx, dword [esp + 0x354]
mov edi, 8
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 1
mov dword [esp + 0x158], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [esp + 0x48], ecx
mov dword [esp + 0x54], 3
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], 0
mov dword [esp + 0x84], 3
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0
mov dword [esp + 0x74], 3
jmp 0x4acd00
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
imul eax, esi, 0x130
add eax, edi
push 0x130
lea ecx, [esp + 0x164]
push ecx
push eax
call fcn.0053b960
add esp, 0xc
mov edx, dword [esp]
mov ecx, dword [esp + 0x38]
inc esi
mov eax, esi
mov dword [esp + 4], esi
mov dword [esp + 0x14], esi
cmp edx, 1
cmove eax, ebx
cmp dword [esp + 0x48], ecx
mov ecx, 1
cmove edx, ecx
cmove ebx, eax
mov dword [esp], edx
mov ecx, dword [0xad1148]
test ecx, ecx
jne 0x4acd29
push 0xa4f8eb
push dword [0xad1138]
call fcn.0053332c
test eax, eax
je 0x4acdc7
mov ecx, eax
mov dword [0xad1148], eax
push 0
mov esi, dword [esp + 0x38]
push esi
push dword [esp + 0x10]
push 0
lea eax, [esp + 0x2a0]
push eax
lea eax, [esp + 0x5c]
push eax
push dword [esp + 0x38]
push dword [esp + 0x40]
push 0x14c
call ecx
cmp eax, 1
jne 0x4acba2
push 0
push dword [esp + 0x4c]
push dword [esp + 0x38]
call esi
mov dword [esp + 0x158], eax
push 0x120
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x168]
push eax
call fcn.0053b960
add esp, 0xc
mov esi, dword [esp + 4]
mov dword [esp + 0x280], 0
mov dword [esp + 0x284], 4
mov dword [esp + 0x288], 0
cmp esi, dword [esp + 0xc]
jne 0x4accb8
lea ecx, [esp + 0xc]
mov edx, esi
call fcn.00499890
jmp 0x4accb0
push 0xa4f930
push 0x2b
push 0xa4add0
call fcn.00512480
add esp, 0xc
ud2