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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x34c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x557c]
xor ebx, ebx
cmp ecx, dword [eax + 0x5564]
jne 0x426021
cmp dword [eax + 0x559c], ebx
je 0x426576
or esi, 0xffffffff
add dword [eax + 0x559c], esi
mov edx, dword [edi + 4]
cmp dword [edx + 0x559c], 0x64
jne 0x42605b
cmp dword [edx + 0x557c], ebx
jle 0x42605b
call fcn.00412850
mov ecx, 3
sub ecx, eax
cmp ecx, 1
jge 0x426054
mov ecx, 3
push ecx
push edi
call fcn.00425da0
mov eax, dword [edi + 4]
cmp dword [eax + 0x559c], 5
jne 0x42606c
call fcn.00413c00
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x559c]
cmp ecx, ebx
jne 0x4260c0
mov dword [eax + 0x559c], 0x7d0
mov eax, dword [edi + 4]
mov edx, dword [eax + 0x559c]
mov dword [eax + 0x55a0], edx
mov eax, dword [edi + 4]
add dword [eax + 0x557c], 1
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x557c]
sub ecx, dword [eax + 0x5564]
neg ecx
sbb ecx, ecx
and ecx, 0xfffffed5
add ecx, 0x12c
mov dword [edi + 0x58], ecx
jmp 0x4260cc
cmp ecx, 0x12c
jl 0x426576
add dword [edi + 0x58], esi
jne 0x426576
mov eax, dword [eax + 0x557c]
mov ecx, 0x1e
mov edx, 0xa
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
lea ecx, [eax + eax*2]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x38], edx
mov dword [esp + 0x7c], edx
lea ecx, [ecx + ecx - 6]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
mov esi, 0xf
add eax, edx
cmp eax, ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], 0x12
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x3c], 0xd
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], esi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
jg 0x426179
mov dword [esp + 0x10], ebx
jmp 0x42618a
cmp eax, 5
mov dword [esp + 0x10], 5
jge 0x42618a
mov dword [esp + 0x10], eax
mov eax, 0x64
mov dword [esp + 0x1c], 3
mov dword [esp + 0xc], ebx
call fcn.005af400
mov esi, eax
mov eax, 0x64
call fcn.005af400
mov edx, dword [edi + 4]
mov dword [esp + 0x20], eax
mov eax, dword [edx + 0x557c]
cmp eax, dword [edx + 0x5564]
sete al
test al, al
mov byte [esp + 0x1b], al
je 0x4261d4
mov dword [esp + 0x1c], 0x14
jmp 0x4261fc
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + ecx*4 + 0x28]
cmp esi, eax
jge 0x4261ea
mov dword [esp + 0x1c], 3
jmp 0x4261fc
mov ecx, dword [esp + ecx*4 + 0x58]
add ecx, eax
cmp esi, ecx
jge 0x4261fc
mov dword [esp + 0x1c], 2
mov esi, dword [esp + 0x10]
mov eax, dword [esp + esi*4 + 0x70]
mov ecx, dword [esp + 0x20]
cmp ecx, eax
jge 0x42621d
cmp dword [esp + 0x1c], 3
jge 0x42621d
mov dword [esp + 0xc], 4
jmp 0x42622f
mov esi, dword [esp + esi*4 + 0x40]
add esi, eax
cmp ecx, esi
jge 0x42622f
mov dword [esp + 0xc], 2
lea esi, [esp + 0x10]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x10], ebx
call fcn.0041cad0
test al, al
je 0x4262f8
jmp 0x426250
mov edx, dword [esp + 0x10]
cmp dword [edx + 8], 1
jne 0x4262e4
mov esi, dword [edx + 0x10]
cmp esi, 8
mov eax, dword [edx + 0x14]
mov ecx, dword [edi + 4]
mov dword [esp + 0x20], eax
ja 0x4262be
cmp eax, 5
ja 0x4262be
mov ecx, dword [ecx + 0x8c]
call fcn.00453840
test al, al
je 0x426296
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x15c]
call fcn.0043c1e0
test al, al
je 0x4262be
mov edx, dword [esp + 0x20]
push edx
mov edx, dword [edi + 4]
push esi
lea ebx, [esp + 0x30]
call fcn.0040d2a0
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4262b6
cmp dword [eax + 0x24], 0xb
je 0x4262e0
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x24]
mov dword [esp + ebx*4 + 0x88], edx
mov dword [esp + ebx*8 + 0x178], ebx
mov dword [esp + ebx*8 + 0x17c], 1
add ebx, 1
mov dword [esp + 0x24], ebx
jmp 0x4262e4
mov ebx, dword [esp + 0x24]
mov edx, dword [edi + 4]
lea esi, [esp + 0x10]
call fcn.0041cad0
test al, al
jne 0x426250
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x557c]
push 2
mov ecx, 0xc
push 3
push 2
lea edx, [ecx - 0xb]
call fcn.00511c40
mov dword [esp + 0x2c], eax
fild dword [esp + 0x2c]
add esp, 0xc
cmp dword [esp + 0x1c], ebx
fstp dword [esp + 0x10]
jle 0x42632d
mov dword [esp + 0x1c], ebx
fld qword [0x679300]
xor esi, esi
cmp dword [esp + 0x1c], esi
mov dword [esp + 0x20], esi
jle 0x426442
fstp st(0)
jmp 0x426354
mov ebx, dword [esp + 0x24]
mov edi, ebx
lea ebx, [esp + 0x178]
call fcn.00511520
cmp byte [esp + 0x1b], 0
mov eax, dword [eax]
mov ecx, dword [esp + eax*4 + 0x88]
mov dword [esp + 0x14], ecx
mov dword [esp + eax*8 + 0x17c], 0
je 0x4263ab
mov eax, 2
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], 4
call fcn.005af400
fld dword [0x6793e0]
mov ebx, dword [esp + eax*4 + 0x28]
fstp dword [esp + 0x10]
mov dword [esp + 0xc], ebx
jmp 0x4263af
mov ebx, dword [esp + 0xc]
cmp ebx, 0x19
mov edx, dword [ebp + 8]
mov esi, dword [edx + 4]
mov edi, dword [esi + 0x557c]
jne 0x4263c4
xor eax, eax
jmp 0x4263cc
push ebx
mov eax, esi
call fcn.0040dc50
push eax
push ebx
mov ebx, edi
mov eax, esi
call fcn.0040ddc0
mov esi, eax
test esi, esi
je 0x426437
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
push ecx
mov ebx, esi
call fcn.00531c90
fld dword [esp + 0x10]
fsub qword [0x679300]
push ecx
mov dword [esi + 0x68], 0x12c
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.005af410
fadd qword [0x679300]
add esp, 4
fstp dword [esi + 0x34]
call fcn.0052f050
mov eax, dword [esp + 0x20]
add eax, 1
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
jl 0x426350
fld qword [0x679300]
mov edi, dword [ebp + 8]
xor esi, esi
mov edx, dword [edi + 4]
mov eax, dword [edx + 0x557c]
sub eax, 1
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fdiv qword [0x6795b0]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fst dword [esp + 0x14]
fldz
fld dword [esp + 0x14]
fcom st(1)
fnstsw ax
fld1
test ah, 0x41
jp 0x42648d
fstp st(1)
fld dword [0x679498]
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fadd st(4)
jmp 0x4264d5
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x4264aa
fstp st(1)
fld dword [0x66541c]
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fadd st(4)
jmp 0x4264d5
fxch st(1)
fmul qword [0x679be0]
fadd qword [0x6792a0]
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x4264d3
fstp st(0)
fld dword [esp + 0xc]
fadd st(4)
jmp 0x4264d5
fsub st(4)
call fcn.006397d0
fxch st(2)
fstp dword [esp + 0x14]
mov ebx, eax
fld dword [esp + 0x14]
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x426505
fstp st(0)
fstp st(0)
fstp st(0)
fld dword [0x6799c0]
fstp dword [esp + 0xc]
fadd dword [esp + 0xc]
jmp 0x42654f
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 1
jne 0x426524
fstp st(1)
fstp st(0)
fld dword [0x679aa8]
fstp dword [esp + 0xc]
fadd dword [esp + 0xc]
jmp 0x42654f
fxch st(1)
fmul qword [0x67a168]
fadd qword [0x6792f0]
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x42654d
fstp st(0)
fadd dword [esp + 0xc]
jmp 0x42654f
fsubrp st(1)
call fcn.006397d0
sub eax, ebx
add eax, 1
call fcn.005af400
add eax, ebx
cmp byte [esp + 0x1b], 0
mov dword [edi + 0x58], eax
je 0x426576
mov ecx, dword [edi + 4]
mov dword [ecx + 0x559c], esi
mov dword [edi + 0x58], esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4