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

Disassembly:
push 0xffffffffffffffff
push 0x6189c1
mov eax, dword fs:[0]
push eax
sub esp, 0x58
push ebx
push ebp
push esi
push edi
mov eax, dword [0x685e38]
xor eax, esp
push eax
lea eax, [esp + 0x6c]
mov dword fs:[0], eax
mov esi, ecx
xor edi, edi
lea ecx, [esp + 0x30]
mov dword [esp + 0x18], edi
call fcn.00517b60
mov eax, dword [esi]
mov edx, dword [eax + 0x40]
mov ecx, esi
mov dword [esp + 0x74], 1
mov dword [esp + 0x14], edi
call edx
fmul qword [0x6345e0]
push esi
lea ecx, [esp + 0x24]
fdiv qword [0x6345d8]
fstp qword [esp + 0x2c]
call fcn.004bb7b0
lea ecx, [esp + 0x20]
mov byte [esp + 0x74], 2
call fcn.004bb7d0
lea ecx, [esp + 0x20]
call fcn.004f69c0
test eax, eax
je 0x471851
lea ecx, [esp + 0x20]
call fcn.004f69c0
mov ebp, eax
mov eax, dword [ebp]
mov edx, dword [eax + 0x38]
mov ecx, ebp
call edx
mov ecx, ebp
cmp eax, 2
jne 0x4716de
call fcn.0048be10
test eax, eax
je 0x471778
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4716d2
jmp 0x47176e
call fcn.004a7c40
mov ecx, eax
call fcn.004754e0
test eax, eax
je 0x471709
mov ecx, ebp
call fcn.004a7c40
mov ecx, eax
call fcn.004754e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x4c]
call eax
test eax, eax
jne 0x471778
mov edx, dword [ebp]
mov eax, dword [edx + 0x38]
mov ecx, ebp
call eax
cmp eax, 9
jne 0x471822
mov ebx, dword [ebp + 0x3c]
test ebx, ebx
je 0x471745
mov eax, dword [ebx + 8]
test eax, eax
jne 0x471741
mov edi, dword [ebx + 4]
and edi, 0x7f
call fcn.005018f0
mov edi, dword [eax + edi*4 - 4]
push ebx
mov ecx, edi
call fcn.00500ce0
mov edi, eax
jmp 0x471747
xor edi, edi
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 2
jne 0x471822
mov ecx, edi
call fcn.0048be10
test eax, eax
je 0x471778
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x471767
sub eax, edx
test eax, eax
ja 0x471822
fld qword [esp + 0x28]
sub esp, 8
cmp dword [esp + 0x1c], 0
mov eax, esp
fstp qword [eax]
mov ecx, esi
mov dword [esp + 0x24], esp
je 0x4717e7
mov edx, dword [esi]
mov eax, dword [edx + 0x44]
call eax
push eax
lea ecx, [esp + 0x64]
push ebp
push ecx
call fcn.00473290
add esp, 0x14
push eax
lea edx, [esp + 0x48]
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x7c], 3
call fcn.00518720
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 4
call fcn.00518050
lea ecx, [esp + 0x44]
mov byte [esp + 0x74], 3
call fcn.00517ca0
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00517ca0
jmp 0x471822
mov eax, dword [esi]
mov edx, dword [eax + 0x44]
call edx
push eax
lea eax, [esp + 0x64]
push ebp
push eax
call fcn.00473290
add esp, 0x14
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 5
call fcn.00518050
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00517ca0
mov dword [esp + 0x14], 1
lea ecx, [esp + 0x20]
call fcn.004bb800
lea ecx, [esp + 0x20]
call fcn.004f69c0
test eax, eax
jne 0x4716a6
xor edi, edi
cmp dword [esp + 0x14], edi
je 0x471851
cmp dword [esp + 0x80], edi
je 0x471901
cmp dword [esi + 0x60], edi
jbe 0x471901
mov bl, 6
lea esp, [esp]
cmp dword [esp + 0x14], 0
je 0x4718bc
mov edx, dword [esi]
mov eax, dword [edx + 0x58]
lea ecx, [esp + 0x44]
push ecx
push edi
mov ecx, esi
call eax
mov ecx, eax
call fcn.00473cc0
push eax
lea ecx, [esp + 0x5c]
push ecx
lea ecx, [esp + 0x38]
mov byte [esp + 0x7c], bl
call fcn.00518720
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 7
call fcn.00518050
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], bl
call fcn.00517ca0
lea ecx, [esp + 0x44]
mov byte [esp + 0x74], 2
call fcn.00517ca0
jmp 0x4718f7
mov eax, dword [esi]
lea edx, [esp + 0x58]
push edx
mov edx, dword [eax + 0x58]
push edi
mov ecx, esi
call edx
mov ecx, eax
call fcn.00473cc0
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 8
call fcn.00518050
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00517ca0
mov dword [esp + 0x14], 1
inc edi
cmp edi, dword [esi + 0x60]
jb 0x471860
cmp dword [esp + 0x14], 0
je 0x471943
mov esi, dword [esp + 0x7c]
lea eax, [esp + 0x30]
push eax
mov ecx, esi
call fcn.00517c40
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], 1
mov byte [esp + 0x74], 1
call fcn.004f2200
lea ecx, [esp + 0x30]
mov byte [esp + 0x74], 0
call fcn.00517ca0
mov eax, esi
jmp 0x471b5c
push esi
lea ecx, [esp + 0x24]
call fcn.004bb7e0
lea ecx, [esp + 0x20]
call fcn.004bb7d0
lea ecx, [esp + 0x20]
call fcn.004f69c0
test eax, eax
je 0x471b22
lea ecx, [esp + 0x20]
call fcn.004f69c0
mov edi, eax
mov ecx, edi
call fcn.004a7c40
mov ecx, eax
call fcn.004754e0
test eax, eax
je 0x471aca
mov ecx, edi
call fcn.004a7c40
mov ecx, eax
call fcn.004754e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x50]
call eax
test eax, eax
je 0x471aca
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 3
je 0x471a20
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 4
je 0x471a20
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 9
jne 0x471aca
mov ebx, dword [edi + 0x3c]
test ebx, ebx
je 0x4719fe
mov eax, dword [ebx + 8]
test eax, eax
jne 0x4719fa
mov ebp, dword [ebx + 4]
and ebp, 0x7f
call fcn.005018f0
mov ebp, dword [eax + ebp*4 - 4]
push ebx
mov ecx, ebp
call fcn.00500ce0
mov ebx, eax
jmp 0x471a00
xor ebx, ebx
mov edx, dword [ebx]
mov eax, dword [edx + 0x38]
mov ecx, ebx
call eax
cmp eax, 3
je 0x471a20
mov edx, dword [ebx]
mov eax, dword [edx + 0x38]
mov ecx, ebx
call eax
cmp eax, 4
jne 0x471aca
fld qword [esp + 0x28]
sub esp, 8
cmp dword [esp + 0x1c], 0
mov eax, esp
fstp qword [eax]
mov ecx, esi
mov dword [esp + 0x24], esp
je 0x471a8f
mov edx, dword [esi]
mov eax, dword [edx + 0x44]
call eax
push eax
lea ecx, [esp + 0x50]
push edi
push ecx
call fcn.00473290
add esp, 0x14
push eax
lea edx, [esp + 0x5c]
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x7c], 9
call fcn.00518720
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 0xa
call fcn.00518050
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 9
call fcn.00517ca0
lea ecx, [esp + 0x44]
mov byte [esp + 0x74], 2
call fcn.00517ca0
jmp 0x471aca
mov eax, dword [esi]
mov edx, dword [eax + 0x44]
call edx
push eax
lea eax, [esp + 0x64]
push edi
push eax
call fcn.00473290
add esp, 0x14
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 0xb
call fcn.00518050
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00517ca0
mov dword [esp + 0x14], 1
lea ecx, [esp + 0x20]
call fcn.004bb800
lea ecx, [esp + 0x20]
call fcn.004f69c0
test eax, eax
jne 0x471967
cmp dword [esp + 0x14], eax
je 0x471b22
mov esi, dword [esp + 0x7c]
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
call fcn.00517c40
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], 1
mov byte [esp + 0x74], 1
call fcn.004f2200
lea ecx, [esp + 0x30]
mov byte [esp + 0x74], 0
call fcn.00517ca0
mov eax, esi
jmp 0x471b5c
mov edx, dword [esp + 0x80]
mov edi, dword [esp + 0x7c]
push edx
push edi
mov ecx, esi
call fcn.004715b0
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], 1
mov byte [esp + 0x74], 1
call fcn.004f2200
lea ecx, [esp + 0x30]
mov byte [esp + 0x74], 0
call fcn.00517ca0
mov eax, edi
mov ecx, dword [esp + 0x6c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret 8