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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffdc
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 4], edx
mov ebx, eax
mov eax, dword [ebp - 4]
call fcn.00406dbc
mov esi, dword [0x624608]
xor eax, eax
push ebp
push 0x609690
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x624d7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x660]
call fcn.004063c0
imul eax, eax, 0x35
mov edx, dword [0x624d7c]
mov edx, dword [edx]
mov edx, dword [edx + 0x660]
push dword [edx + eax*4 + 0x38]
mov eax, dword [ebx + 0x3c]
push eax
mov eax, dword [0x624c18]
mov eax, dword [eax + 0x78]
push eax
mov eax, dword [0x624d7c]
mov eax, dword [eax]
cmp byte [eax + 0x60], 0
jne 0x6090af
mov eax, dword [0x624c18]
cmp byte [eax + 0x2d], 0
jne 0x6090af
xor eax, eax
jmp 0x6090b1
mov al, 1
push eax
mov al, byte [ebx + 0x3a]
push eax
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebx + 0x44]
mov edx, dword [ebx + 0x68]
mov eax, dword [ebx + 0x34]
call fcn.0053eed8
mov eax, dword [esi]
mov ebx, dword [eax + 0x7c]
push 0
push 0
mov eax, dword [ebp - 4]
push eax
mov eax, dword [eax]
call dword [eax + 0x8c]
mov eax, dword [0x624f84]
mov eax, dword [eax]
mov eax, dword [eax + 0x128]
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
fild qword [ebp - 0x20]
fmul dword [0x6096a0]
fsub dword [0x6096a4]
fstp dword [ebp - 8]
wait
mov dword [ebp - 0xc], 0x428c0000
push dword [ebp - 8]
push dword [ebp - 0xc]
push 0x44200000
push 0x41a00000
push 0
push 0
push 0x3f800000
push 0x3e4ccccd
call fcn.00472224
mov ecx, eax
mov edx, dword [ebp - 4]
mov eax, ebx
call fcn.005d3edc
push dword [ebp - 8]
fld dword [ebp - 0xc]
fadd dword [0x6096a8]
add esp, 0xfffffffc
fstp dword [esp]
wait
push 0x44200000
push 0x41700000
push 0
push 0
push 0x3f800000
push 0x3dcccccd
call fcn.00472224
mov ecx, eax
mov edx, dword [ebp - 4]
mov eax, ebx
call fcn.005d3edc
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov eax, dword [eax + 0x204]
push eax
push 0
mov eax, dword [ebp - 4]
push eax
mov eax, dword [eax]
call dword [eax + 0x8c]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, 0xffbbbbff
call fcn.005fa108
fld dword [ebp - 0xc]
fadd dword [0x6096ac]
fstp dword [ebp - 0x10]
wait
fld dword [ebp - 8]
fadd dword [0x6096b0]
add esp, 0xfffffffc
fstp dword [esp]
wait
fld dword [ebp - 0xc]
fadd dword [0x6096b4]
add esp, 0xfffffffc
fstp dword [esp]
wait
push 0x41800000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x6096c0
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x6096d0]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x6096dc
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x6096e4]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x6096f0
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x6096f8]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x609704
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609708]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x609714
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x60971c]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x609728
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609730]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x60973c
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609744]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x609750
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609758]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x609764
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x60976c]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x609778
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609780]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x60978c
mov edx, dword [ebp - 4]
call fcn.005fa11c
mov eax, dword [ebp - 0x14]
call fcn.004063c0
test eax, eax
jl 0x60965e
inc eax
mov dword [ebp - 0x18], eax
xor edi, edi
mov eax, edi
shl eax, 4
add eax, edi
mov edx, dword [ebp - 0x14]
lea ebx, [edx + eax*4]
push 0
push 0
mov eax, dword [ebp - 4]
push eax
mov eax, dword [eax]
call dword [eax + 0x8c]
push dword [ebp - 8]
fld dword [ebp - 0xc]
fadd dword [0x609794]
imul eax, edi, 0xe
mov dword [ebp - 0x24], eax
fild dword [ebp - 0x24]
faddp st(1)
add esp, 0xfffffffc
fstp dword [esp]
wait
push 0x44200000
push 0x41700000
push 0
push 0
push 0x3f800000
push 0x3dcccccd
call fcn.00472224
mov ecx, eax
mov eax, dword [esi]
mov eax, dword [eax + 0x7c]
mov edx, dword [ebp - 4]
call fcn.005d3edc
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov eax, dword [eax + 0x204]
push eax
push 0
mov eax, dword [ebp - 4]
push eax
mov eax, dword [eax]
call dword [eax + 0x8c]
mov edx, dword [ebx + 0x34]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
call fcn.005fa108
fld dword [ebp - 0xc]
fadd dword [0x609798]
imul eax, edi, 0xe
mov dword [ebp - 0x24], eax
fild dword [ebp - 0x24]
faddp st(1)
fstp dword [ebp - 0x10]
wait
fld dword [ebp - 8]
fadd dword [0x6096b0]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 8]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x6096d0]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x6096e4]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0xc]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x6096f8]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x10]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609708]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x18]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
mov eax, dword [0x624d7c]
mov eax, dword [eax]
cmp byte [eax + 0x60], 0
jne 0x609527
mov eax, dword [0x624c18]
cmp byte [eax + 0x2d], 0
je 0x609654
fld dword [ebp - 8]
fadd dword [0x60971c]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x1c]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609730]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x20]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609744]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x24]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x609758]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x28]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
fld dword [ebp - 8]
fadd dword [0x60976c]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x2c]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
cmp dword [ebx + 0x38], 0
jbe 0x609654
fld dword [ebp - 8]
fadd dword [0x609780]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41600000
mov ecx, dword [ebx + 0x30]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [ebp - 4]
call fcn.005fa11c
mov edx, dword [ebx + 0x38]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
call fcn.005fa108
fld dword [ebp - 8]
fadd dword [0x60979c]
add esp, 0xfffffffc
fstp dword [esp]
wait
push dword [ebp - 0x10]
push 0x41800000
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov ecx, 0x6097a8
mov edx, dword [ebp - 4]
call fcn.005fa11c
inc edi
dec dword [ebp - 0x18]
jne 0x60939e
lea eax, [ebp - 0x14]
mov edx, dword [0x53ea5c]
call fcn.00406694
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x609697
lea eax, [ebp - 0x14]
mov edx, dword [0x53ea5c]
call fcn.00406694
lea eax, [ebp - 4]
call fcn.00406d4c
ret