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

Disassembly:
push 0xffffffffffffffff
push 0x612c11
mov eax, dword fs:[0]
push eax
sub esp, 0x58
push ebx
push ebp
push esi
push edi
mov eax, dword [0x67dc50]
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.00516c20
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 [0x62e318]
push esi
lea ecx, [esp + 0x24]
fdiv qword [0x62e310]
fstp qword [esp + 0x2c]
call fcn.004b7680
lea ecx, [esp + 0x20]
mov byte [esp + 0x74], 2
call fcn.004b76a0
lea ecx, [esp + 0x20]
call fcn.004f32d0
test eax, eax
je 0x46d8c1
lea ecx, [esp + 0x20]
call fcn.004f32d0
mov ebp, eax
mov eax, dword [ebp]
mov edx, dword [eax + 0x38]
mov ecx, ebp
call edx
mov ecx, ebp
cmp eax, 2
jne 0x46d74e
call fcn.004c3230
test eax, eax
je 0x46d7e8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x46d742
jmp 0x46d7de
call fcn.004a3cd0
mov ecx, eax
call fcn.00471270
test eax, eax
je 0x46d779
mov ecx, ebp
call fcn.004a3cd0
mov ecx, eax
call fcn.00471270
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x4c]
call eax
test eax, eax
jne 0x46d7e8
mov edx, dword [ebp]
mov eax, dword [edx + 0x38]
mov ecx, ebp
call eax
cmp eax, 9
jne 0x46d892
mov ebx, dword [ebp + 0x3c]
test ebx, ebx
je 0x46d7b5
mov eax, dword [ebx + 8]
test eax, eax
jne 0x46d7b1
mov edi, dword [ebx + 4]
and edi, 0x7f
call fcn.004fe0e0
mov edi, dword [eax + edi*4 - 4]
push ebx
mov ecx, edi
call fcn.004fd530
mov edi, eax
jmp 0x46d7b7
xor edi, edi
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 2
jne 0x46d892
mov ecx, edi
call fcn.004c3230
test eax, eax
je 0x46d7e8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x46d7d7
sub eax, edx
test eax, eax
ja 0x46d892
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 0x46d857
mov edx, dword [esi]
mov eax, dword [edx + 0x44]
call eax
push eax
lea ecx, [esp + 0x64]
push ebp
push ecx
call fcn.0046f160
add esp, 0x14
push eax
lea edx, [esp + 0x48]
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x7c], 3
call fcn.005177a0
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 4
call fcn.00517140
lea ecx, [esp + 0x44]
mov byte [esp + 0x74], 3
call fcn.00516d60
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00516d60
jmp 0x46d892
mov eax, dword [esi]
mov edx, dword [eax + 0x44]
call edx
push eax
lea eax, [esp + 0x64]
push ebp
push eax
call fcn.0046f160
add esp, 0x14
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 5
call fcn.00517140
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00516d60
mov dword [esp + 0x14], 1
lea ecx, [esp + 0x20]
call fcn.004b76d0
lea ecx, [esp + 0x20]
call fcn.004f32d0
test eax, eax
jne 0x46d716
xor edi, edi
cmp dword [esp + 0x14], edi
je 0x46d8c1
cmp dword [esp + 0x80], edi
je 0x46d971
cmp dword [esi + 0x60], edi
jbe 0x46d971
mov bl, 6
lea esp, [esp]
cmp dword [esp + 0x14], 0
je 0x46d92c
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.0046fb90
push eax
lea ecx, [esp + 0x5c]
push ecx
lea ecx, [esp + 0x38]
mov byte [esp + 0x7c], bl
call fcn.005177a0
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 7
call fcn.00517140
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], bl
call fcn.00516d60
lea ecx, [esp + 0x44]
mov byte [esp + 0x74], 2
call fcn.00516d60
jmp 0x46d967
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.0046fb90
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 8
call fcn.00517140
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00516d60
mov dword [esp + 0x14], 1
inc edi
cmp edi, dword [esi + 0x60]
jb 0x46d8d0
cmp dword [esp + 0x14], 0
je 0x46d9b3
mov esi, dword [esp + 0x7c]
lea eax, [esp + 0x30]
push eax
mov ecx, esi
call fcn.00516d00
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], 1
mov byte [esp + 0x74], 1
call fcn.004ed1b0
lea ecx, [esp + 0x30]
mov byte [esp + 0x74], 0
call fcn.00516d60
mov eax, esi
jmp 0x46dbcc
push esi
lea ecx, [esp + 0x24]
call fcn.004b76b0
lea ecx, [esp + 0x20]
call fcn.004b76a0
lea ecx, [esp + 0x20]
call fcn.004f32d0
test eax, eax
je 0x46db92
lea ecx, [esp + 0x20]
call fcn.004f32d0
mov edi, eax
mov ecx, edi
call fcn.004a3cd0
mov ecx, eax
call fcn.00471270
test eax, eax
je 0x46db3a
mov ecx, edi
call fcn.004a3cd0
mov ecx, eax
call fcn.00471270
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x50]
call eax
test eax, eax
je 0x46db3a
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 3
je 0x46da90
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 4
je 0x46da90
mov edx, dword [edi]
mov eax, dword [edx + 0x38]
mov ecx, edi
call eax
cmp eax, 9
jne 0x46db3a
mov ebx, dword [edi + 0x3c]
test ebx, ebx
je 0x46da6e
mov eax, dword [ebx + 8]
test eax, eax
jne 0x46da6a
mov ebp, dword [ebx + 4]
and ebp, 0x7f
call fcn.004fe0e0
mov ebp, dword [eax + ebp*4 - 4]
push ebx
mov ecx, ebp
call fcn.004fd530
mov ebx, eax
jmp 0x46da70
xor ebx, ebx
mov edx, dword [ebx]
mov eax, dword [edx + 0x38]
mov ecx, ebx
call eax
cmp eax, 3
je 0x46da90
mov edx, dword [ebx]
mov eax, dword [edx + 0x38]
mov ecx, ebx
call eax
cmp eax, 4
jne 0x46db3a
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 0x46daff
mov edx, dword [esi]
mov eax, dword [edx + 0x44]
call eax
push eax
lea ecx, [esp + 0x50]
push edi
push ecx
call fcn.0046f160
add esp, 0x14
push eax
lea edx, [esp + 0x5c]
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x7c], 9
call fcn.005177a0
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 0xa
call fcn.00517140
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 9
call fcn.00516d60
lea ecx, [esp + 0x44]
mov byte [esp + 0x74], 2
call fcn.00516d60
jmp 0x46db3a
mov eax, dword [esi]
mov edx, dword [eax + 0x44]
call edx
push eax
lea eax, [esp + 0x64]
push edi
push eax
call fcn.0046f160
add esp, 0x14
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 0xb
call fcn.00517140
lea ecx, [esp + 0x58]
mov byte [esp + 0x74], 2
call fcn.00516d60
mov dword [esp + 0x14], 1
lea ecx, [esp + 0x20]
call fcn.004b76d0
lea ecx, [esp + 0x20]
call fcn.004f32d0
test eax, eax
jne 0x46d9d7
cmp dword [esp + 0x14], eax
je 0x46db92
mov esi, dword [esp + 0x7c]
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
call fcn.00516d00
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], 1
mov byte [esp + 0x74], 1
call fcn.004ed1b0
lea ecx, [esp + 0x30]
mov byte [esp + 0x74], 0
call fcn.00516d60
mov eax, esi
jmp 0x46dbcc
mov edx, dword [esp + 0x80]
mov edi, dword [esp + 0x7c]
push edx
push edi
mov ecx, esi
call fcn.0046d620
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], 1
mov byte [esp + 0x74], 1
call fcn.004ed1b0
lea ecx, [esp + 0x30]
mov byte [esp + 0x74], 0
call fcn.00516d60
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