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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x672850
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa8
push ebx
push ebp
mov ebx, ecx
push esi
push edi
lea ecx, [esp + 0x38]
call fcn.0064dc20
xor edi, edi
mov dword [esp + 0x60], 0x69dbfc
mov dword [esp + 0x64], edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0xc0], edi
mov dword [esp + 0x74], 0x69dbe8
mov dword [esp + 0x78], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x80], edi
mov dword [esp + 0x7c], edi
mov eax, dword [ebx + 0xbc]
mov ecx, dword [ebx + 0xa0]
inc eax
mov byte [esp + 0xc0], 1
cmp ecx, eax
jae 0x4f235e
mov ecx, dword [esp + 0xb8]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x150], edi
jne 0x4f236f
push 4
mov ecx, ebx
call fcn.004f0a90
push 0xffffffffffffffff
lea ecx, [ebx + 0xcc]
push edi
call fcn.00472ab0
lea esi, [ebx + 0xe0]
push 0xffffffffffffffff
push edi
mov ecx, esi
call fcn.00473440
push 0xffffffffffffffff
lea ecx, [ebx + 0xf4]
push edi
call fcn.00473440
mov eax, dword [ebx + 0xa0]
mov ecx, dword [ebx + 0xbc]
mov ebp, eax
mov edx, dword [ebx + 0xa8]
sub ebp, ecx
mov dword [esp + 0x1c], eax
imul ebp, dword [ebx + 0xc8]
fld qword [edx + eax*8]
fsub qword [edx + ecx*8]
mov eax, dword [0x705ee4]
mov dword [esp + 0x28], edi
imul ebp, eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x34], ecx
fild qword [esp + 0x24]
xor ebp, ebp
xor ecx, ecx
fdivp st(1)
cmp eax, 4
mov eax, dword [esp + 0x1c]
setg cl
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x34]
cmp ecx, eax
mov dword [esp + 0x50], ecx
fstp qword [esp + 0x24]
jae 0x4f27d1
jmp 0x4f2408
mov ecx, dword [esp + 0x50]
fld qword [edx + ecx*8]
mov dword [esp + 0x34], 1
fstp qword [esp + 0x14]
fld qword [esp + 0x24]
fadd qword [edx + ecx*8 + 8]
fcomp qword [esp + 0x14]
fnstsw ax
test ah, 0x41
jne 0x4f27bc
cmp ecx, dword [ebx + 0xbc]
je 0x4f2457
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4f2457
fld qword [esp + 0x14]
fadd qword [esp + 0x24]
mov dword [esp + 0x34], 0
fstp qword [esp + 0x14]
jmp 0x4f279f
fld qword [esp + 0x14]
fcomp qword [edx + ecx*8 + 8]
fnstsw ax
test ah, 0x41
jne 0x4f2605
fld qword [edx + ecx*8 + 8]
fstp qword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push edx
push eax
push ecx
lea ecx, [esp + 0x94]
push ecx
mov ecx, ebx
call fcn.004f1e10
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ecx
mov edx, dword [eax + 8]
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], ecx
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x48], edx
sub esp, 0x18
lea edx, [esp + 0x50]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
mov dword [esp + 0x68], eax
call fcn.0064dc70
lea ecx, [esp + 0x78]
call fcn.00472bf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
test ebp, ebp
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
jne 0x4f2528
sub esp, 0x18
lea edx, [esp + 0x50]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
call fcn.0064dc70
lea ecx, [ebx + 0xcc]
call fcn.00472bf0
mov eax, dword [esi + 8]
push 0xffffffffffffffff
mov dword [esp + 0x20], eax
inc eax
push eax
mov ecx, esi
call fcn.00473440
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x1c]
fld qword [esp + 0x14]
fstp qword [eax + ecx*8]
jmp 0x4f278e
mov edx, ebp
sub edx, edi
cmp edx, 2
jle 0x4f278e
lea eax, [ebp - 1]
push eax
lea eax, [esp + 0x64]
push edi
push eax
call fcn.00463f30
mov eax, dword [esp + 0x70]
lea ecx, [ebp + ebp*2]
fstp qword [esp + 0x28]
lea edx, [eax + ecx*8 - 0x18]
lea ecx, [edi + edi*2]
push edx
lea edx, [eax + ecx*8]
push edx
call fcn.0064def0
mov eax, dword [esp + 0x44]
add esp, 0x14
fld qword [esp + 0x1c]
test eax, eax
jne 0x4f25a6
fcomp qword [0x69ec50]
fnstsw ax
test ah, 0x41
je 0x4f2599
fcomp qword [0x691ad8]
fnstsw ax
test ah, 1
jne 0x4f278e
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x34], esp
jmp 0x4f25d1
sub esp, 0x18
fstp st(0)
mov ecx, esp
mov dword [esp + 0x34], esp
jmp 0x4f25d1
fcomp qword [0x692d48]
fnstsw ax
test ah, 0x41
je 0x4f25c6
fcomp qword [0x691ac8]
fnstsw ax
test ah, 1
jne 0x4f278e
jmp 0x4f25c8
fstp st(0)
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x34], esp
lea eax, [esp + 0x50]
push eax
call fcn.0064dc70
lea ecx, [ebx + 0xcc]
call fcn.00472bf0
mov edi, dword [esi + 8]
push 0xffffffffffffffff
lea ecx, [edi + 1]
push ecx
mov ecx, esi
call fcn.00473440
mov edx, dword [esi + 4]
fld qword [esp + 0x14]
fstp qword [edx + edi*8]
jmp 0x4f278b
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push eax
push edx
lea eax, [esp + 0xa8]
push ecx
push eax
mov ecx, ebx
call fcn.004f1e10
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], edx
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0x14]
sub esp, 0x18
mov dword [esp + 0x60], ecx
lea eax, [esp + 0x50]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
mov dword [esp + 0x68], edx
call fcn.0064dc70
lea ecx, [esp + 0x78]
call fcn.00472bf0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test ebp, ebp
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], edx
jne 0x4f26bb
sub esp, 0x18
lea eax, [esp + 0x50]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
call fcn.0064dc70
lea ecx, [ebx + 0xcc]
call fcn.00472bf0
mov eax, dword [esi + 8]
push 0xffffffffffffffff
mov dword [esp + 0x20], eax
inc eax
push eax
mov ecx, esi
call fcn.00473440
mov ecx, dword [esi + 4]
mov edx, dword [esp + 0x1c]
fld qword [esp + 0x14]
fstp qword [ecx + edx*8]
jmp 0x4f278e
mov eax, ebp
sub eax, edi
cmp eax, 2
jle 0x4f278e
lea eax, [ebp - 1]
lea ecx, [esp + 0x60]
push eax
push edi
push ecx
call fcn.00463f30
mov eax, dword [esp + 0x70]
lea edx, [ebp + ebp*2]
fstp qword [esp + 0x28]
lea ecx, [eax + edx*8 - 0x18]
lea edx, [edi + edi*2]
push ecx
lea eax, [eax + edx*8]
push eax
call fcn.0064def0
mov eax, dword [esp + 0x44]
add esp, 0x14
fld qword [esp + 0x1c]
test eax, eax
jne 0x4f2735
fcomp qword [0x69ec50]
fnstsw ax
test ah, 0x41
je 0x4f2728
fcomp qword [0x691ad8]
fnstsw ax
test ah, 1
jne 0x4f278e
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x34], esp
jmp 0x4f275c
sub esp, 0x18
fstp st(0)
mov ecx, esp
mov dword [esp + 0x34], esp
jmp 0x4f275c
fcomp qword [0x692d48]
fnstsw ax
test ah, 0x41
je 0x4f2751
fcomp qword [0x691ac8]
fnstsw ax
test ah, 1
jne 0x4f278e
jmp 0x4f2753
fstp st(0)
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x34], esp
lea edx, [esp + 0x50]
push edx
call fcn.0064dc70
lea ecx, [ebx + 0xcc]
call fcn.00472bf0
mov edi, dword [esi + 8]
push 0xffffffffffffffff
mov ecx, esi
lea eax, [edi + 1]
push eax
call fcn.00473440
mov ecx, dword [esi + 4]
fld qword [esp + 0x14]
fstp qword [ecx + edi*8]
lea edi, [ebp - 1]
fld qword [esp + 0x14]
fadd qword [esp + 0x24]
mov ecx, dword [esp + 0x50]
inc ebp
fstp qword [esp + 0x14]
mov edx, dword [ebx + 0xa8]
fld qword [esp + 0x24]
fadd qword [edx + ecx*8 + 8]
fcomp qword [esp + 0x14]
fnstsw ax
test ah, 0x41
je 0x4f242e
lea eax, [ecx + 1]
mov ecx, dword [ebx + 0xa0]
cmp eax, ecx
mov dword [esp + 0x50], eax
jb 0x4f2404
mov ebp, dword [ebx + 0xd4]
cmp ebp, 2
jae 0x4f27e7
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x34], esp
jmp 0x4f285f
mov edx, dword [ebx + 0xd0]
lea edi, [ebp + ebp*2]
shl edi, 3
lea ecx, [esp + 0x38]
lea eax, [edx + edi - 0x18]
push eax
push ecx
call fcn.0064def0
fcomp qword [0x692690]
add esp, 8
fnstsw ax
test ah, 1
je 0x4f2856
mov edx, dword [ebx + 0xd0]
mov ecx, dword [esp + 0x38]
fld qword [esp + 0x54]
lea eax, [edx + edi - 0x18]
mov edx, dword [esp + 0x3c]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
mov eax, dword [ebx + 0xe4]
fstp qword [eax + ebp*8 - 8]
jmp 0x4f288e
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x34], esp
lea edx, [esp + 0x50]
push edx
call fcn.0064dc70
lea ecx, [ebx + 0xcc]
call fcn.00472bf0
mov edi, dword [esi + 8]
push 0xffffffffffffffff
mov ecx, esi
lea eax, [edi + 1]
push eax
call fcn.00473440
mov ecx, dword [esi + 4]
fld qword [esp + 0x54]
fstp qword [ecx + edi*8]
mov edi, dword [ebx + 0xfc]
lea esi, [ebx + 0xf4]
push 0xffffffffffffffff
mov ecx, esi
lea edx, [edi + 1]
mov dword [esp + 0x28], 0
push edx
mov dword [esp + 0x30], 0
call fcn.00473440
mov eax, dword [esi + 4]
mov dword [eax + edi*8], 0
mov dword [eax + edi*8 + 4], 0
mov eax, dword [ebx + 0xd4]
cmp eax, 1
jbe 0x4f2924
dec eax
mov ebp, 0x18
mov dword [esp + 0x30], eax
mov ecx, dword [ebx + 0xd0]
lea eax, [ecx + ebp]
push eax
add eax, 0xffffffe8
push eax
call fcn.0064def0
mov edi, dword [esi + 8]
add esp, 8
fadd qword [esp + 0x24]
lea edx, [edi + 1]
push 0xffffffffffffffff
push edx
mov ecx, esi
fstp qword [esp + 0x2c]
call fcn.00473440
mov eax, dword [esi + 4]
add ebp, 0x18
fld qword [esp + 0x24]
fstp qword [eax + edi*8]
mov eax, dword [esp + 0x30]
dec eax
mov dword [esp + 0x30], eax
jne 0x4f28de
mov eax, dword [ebx + 0xc4]
mov dword [ebx + 0x108], 1
test eax, eax
mov dword [ebx + 0x10c], 0
jne 0x4f294b
push 1
mov ecx, ebx
call fcn.004fb3f0
mov dword [esp + 0x60], 0x69dbfc
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc0], 5
test eax, eax
je 0x4f296f
push eax
call fcn.0065e732
add esp, 4
mov ecx, dword [esp + 0xb8]
pop edi
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret