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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x70
push ebx
push ebp
push esi
mov esi, ecx
mov eax, dword [esi + 8]
push edi
lea ecx, [eax + 0x80918]
call fcn.0046f4f8
mov ecx, eax
call fcn.004741a6
fstp dword [esp + 0x2c]
mov eax, dword [esi + 8]
lea ecx, [esp + 0x38]
push ecx
lea ecx, [eax + 0x80918]
call fcn.0046f4f8
mov ecx, eax
call fcn.00474569
cmp byte [esi + 0x1acc], 0
mov eax, dword [esi + 8]
lea edx, [eax + 0x1f90]
mov dword [esp + 0x24], edx
jne 0x43b00f
lea ecx, [eax + 0x394]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
lea edx, [esp + 0x30]
push edx
call eax
mov eax, dword [esi + 8]
push 0
lea ecx, [eax + 0x3a4]
call fcn.00467a82
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
push ecx
mov byte [esp + 0x2c], al
mov ebp, dword [esp + 0x2c]
push edx
push ebp
lea edi, [esi + 0x60e34]
push edi
call fcn.0044ea10
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
push eax
push ecx
push ebp
lea ebx, [esi + 0x17ac]
push ebx
call fcn.0044ea10
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
push edx
push eax
mov ecx, ebp
push ecx
jmp 0x43b048
mov eax, 0xffffd8f1
mov ecx, eax
push ecx
push eax
push 0
lea edi, [esi + 0x60e34]
push edi
call fcn.0044ea10
mov eax, 0xffffd8f1
mov ecx, eax
push ecx
push eax
push 0
lea ebx, [esi + 0x17ac]
push ebx
call fcn.0044ea10
mov eax, 0xffffd8f1
mov ecx, eax
push ecx
push eax
push 0
lea ebp, [esi + 0x1c8]
push ebp
call fcn.0044ea10
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
mov edx, dword [ebx]
mov eax, dword [edx + 4]
mov ecx, ebx
call eax
mov edx, dword [ebp]
mov eax, dword [edx + 4]
mov ecx, ebp
call eax
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 0x1f8c]
call fcn.00463530
test al, al
jne 0x43b900
mov eax, dword [esi + 8]
mov edx, dword [eax + 0x394]
lea ecx, [eax + 0x394]
mov eax, dword [edx + 0x44]
call eax
mov ecx, 0x12c
mov edi, 0x64
test eax, eax
jge 0x43b0cf
cmp byte [esi + 0x60768], 0
jne 0x43b0b8
mov byte [esi + 0x60768], 1
add dword [esi + 0x60764], 5
cmp dword [esi + 0x60764], ecx
jl 0x43b10c
mov dword [esi + 0x60764], ecx
jmp 0x43b10c
mov eax, dword [esi + 8]
mov edx, dword [eax + 0x394]
lea ecx, [eax + 0x394]
mov eax, dword [edx + 0x44]
call eax
test eax, eax
jle 0x43b113
cmp byte [esi + 0x60768], 0
je 0x43b113
add dword [esi + 0x60764], 0xfffffffb
cmp dword [esi + 0x60764], edi
jg 0x43b10c
mov dword [esi + 0x60764], edi
mov byte [esi + 0x60768], 0
mov eax, esi
call fcn.0043da30
cmp byte [esi + 0x1a90], 0
mov ebp, dword [esp + 0x24]
je 0x43b150
inc dword [esi + 0x1a98]
mov eax, dword [esi + 0x1a98]
cmp dword [ebp + 0x358], eax
jg 0x43b150
call fcn.0043c8d0
mov ecx, esi
call fcn.0043cb50
push esi
call fcn.0043dc40
mov dword [esi + 0x1a98], 0
mov eax, dword [esi + 0x200]
cmp dword [0x10461c4], eax
je 0x43b18a
mov dword [ebp + 0x78], eax
mov edi, dword [esi + 0x10]
lea ebx, [esi + 0x10]
push 8
mov ecx, ebp
mov dword [0x10461c4], eax
add edi, 0x68
call fcn.0046855c
fmul qword [0x6cfca0]
call fcn.0064b350
mov edx, dword [edi]
push eax
mov ecx, ebx
call edx
cmp dword [ebp + 0xd4], 0
fldz
fstp dword [esp + 0x28]
je 0x43b1a3
fld dword [0x6cfe48]
fstp dword [esp + 0x28]
mov eax, dword [esi + 0x29c]
mov edx, dword [eax + 0x1c]
lea edi, [esi + 0x29c]
lea ecx, [esp + 0x48]
push ecx
mov ecx, edi
call edx
fld dword [esp + 0x2c]
fld qword [0x6cfe98]
fmul st(1)
fst qword [esp + 0x58]
call fcn.0064b350
fld dword [esp + 0x28]
mov ebx, eax
fadd qword [0x6cfea8]
fmul st(1)
call fcn.0064b350
fild dword [esp + 0x48]
mov edx, dword [esp + 0x3c]
mov ebp, eax
mov eax, dword [esp + 0x38]
fmul st(1)
lea ecx, [ebx + eax]
lea eax, [edx + ebp]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], eax
call fcn.0064b350
fimul dword [esp + 0x4c]
add eax, ebx
add eax, dword [esp + 0x38]
mov dword [esp + 0x78], eax
call fcn.0064b350
add eax, ebp
add eax, dword [esp + 0x3c]
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 8]
mov edx, dword [eax + 0x394]
mov edx, dword [edx + 0x18]
lea ecx, [eax + 0x394]
lea eax, [esp + 0x50]
push eax
call edx
push eax
lea eax, [esp + 0x74]
push eax
call fcn.0047a890
mov edx, dword [esi + 0x330]
lea ebp, [esi + 0x330]
add esp, 8
mov ecx, ebp
test al, al
je 0x43b273
mov eax, dword [edx + 0x54]
call eax
test al, al
jne 0x43b278
mov edx, dword [ebp]
mov eax, dword [edx + 0x34]
mov ecx, ebp
jmp 0x43b276
mov eax, dword [edx + 0x38]
call eax
mov edx, dword [ebp]
mov eax, dword [edx + 4]
mov ecx, ebp
call eax
fld dword [esp + 0x2c]
fmul qword [0x6d0a18]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ecx
fst qword [esp + 0x50]
call fcn.0064b350
mov edx, dword [edi]
mov edx, dword [edx + 0x1c]
mov dword [esp + 0x68], eax
lea eax, [esp + 0x30]
push eax
mov ecx, edi
call edx
fild dword [eax + 4]
fadd dword [esp + 0x28]
fmul dword [esp + 0x2c]
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
call fcn.0064b350
add eax, dword [esp + 0x64]
lea edx, [esp + 0x40]
mov dword [esp + 0x6c], eax
mov eax, dword [esi + 8]
lea ecx, [eax + 0x394]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
push edx
call eax
mov ecx, dword [esp + 0x38]
mov eax, dword [esi + 8]
sub dword [esp + 0x40], ecx
mov edx, dword [esp + 0x3c]
sub dword [esp + 0x44], edx
push 0
lea ecx, [eax + 0x3a4]
call fcn.00467a82
test al, al
je 0x43b332
cmp byte [esi + 0x204], 0
jne 0x43b33b
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x64]
push ecx
call fcn.0047a890
add esp, 8
test al, al
je 0x43b332
mov byte [esi + 0x204], 1
cmp byte [esi + 0x204], 0
je 0x43b39d
fld qword [esp + 0x50]
fsub qword [esp + 0x58]
call fcn.0064b350
mov ecx, eax
mov eax, dword [esp + 0x40]
sub eax, ebx
imul eax, eax, 0x64
cdq
idiv ecx
xor ebp, ebp
cmp eax, ebp
jge 0x43b360
xor eax, eax
jmp 0x43b36a
cmp eax, 0x64
jle 0x43b36a
mov eax, 0x64
mov dword [esi + 0x200], eax
mov eax, dword [esi + 8]
mov edx, dword [eax + 0x394]
lea ecx, [eax + 0x394]
mov eax, dword [edx + 0x20]
call eax
test al, al
jne 0x43b38e
mov byte [esi + 0x204], al
mov ecx, dword [esi + 0x200]
mov edx, dword [esp + 0x24]
mov dword [edx + 0x78], ecx
jmp 0x43b39f
xor ebp, ebp
mov ecx, dword [esi + 0x17c8]
sub ecx, dword [esi + 0x17c4]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
xor edi, edi
test eax, eax
jle 0x43b497
jmp 0x43b3d0
lea ebx, [esi + 0x17b8]
push edi
mov eax, ebx
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b414
push edi
mov eax, ebx
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x60]
call eax
test al, al
je 0x43b414
mov eax, dword [esi + 8]
fldz
mov edx, dword [eax + 0x802e0]
lea ecx, [eax + 0x802e0]
mov eax, dword [edx + 8]
sub esp, 8
fstp qword [esp]
push ebp
call eax
lea ebx, [esi + 0x17b8]
push edi
mov eax, ebx
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b43f
push edi
mov eax, ebx
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x68]
call eax
test al, al
jne 0x43b55c
lea ebx, [esi + 0x17b8]
push edi
mov eax, ebx
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b46f
push edi
mov eax, ebx
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x6c]
call eax
test al, al
je 0x43b46f
cmp edi, 7
je 0x43b68d
mov ecx, dword [esi + 0x17c8]
sub ecx, dword [esi + 0x17c4]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
inc edi
add ecx, edx
cmp edi, ecx
jl 0x43b3d0
mov ecx, dword [esi + 0x60e50]
sub ecx, dword [esi + 0x60e4c]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
xor edi, edi
test ecx, ecx
jle 0x43b76b
lea ebx, [esi + 0x60e40]
push edi
mov eax, ebx
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b504
push edi
mov eax, ebx
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x60]
call eax
test al, al
je 0x43b504
mov eax, dword [esi + 8]
fldz
mov edx, dword [eax + 0x802e0]
lea ecx, [eax + 0x802e0]
mov eax, dword [edx + 8]
sub esp, 8
fstp qword [esp]
push ebp
call eax
lea ebx, [esi + 0x60e40]
push edi
mov eax, ebx
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b52f
push edi
mov eax, ebx
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x68]
call eax
test al, al
jne 0x43b6c6
mov ecx, dword [esi + 0x60e50]
sub ecx, dword [esi + 0x60e4c]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
inc edi
add ecx, edx
cmp edi, ecx
jl 0x43b4c0
jmp 0x43b76b
mov eax, dword [esi + 8]
fldz
mov edx, dword [eax + 0x801a0]
lea ecx, [eax + 0x801a0]
mov eax, dword [edx + 8]
sub esp, 8
fstp qword [esp]
push ebp
call eax
cmp edi, 7
ja case.default.0x43b582
jmp dword [edi*4 + 0x43b908]
mov ecx, esi
call fcn.0043d750
mov ecx, dword [esi + 8]
mov dword [ecx + 0x2804], ebp
mov edx, dword [esi + 0x10]
mov eax, dword [edx + 0xc]
lea ecx, [esi + 0x10]
call eax
mov eax, esi
mov byte [esi + 0x1ab0], 1
call fcn.0043da30
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, esi
call fcn.0043c710
mov ecx, esi
call fcn.0043cb50
push esi
mov dword [esi + 0x1a98], ebp
call fcn.0043dc40
mov eax, esi
mov byte [esi + 0x1ab0], 1
call fcn.0043da30
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, esi
call fcn.0043c840
jmp 0x43b5c1
mov eax, esi
call fcn.0043c7a0
jmp 0x43b5c1
mov ecx, dword [esi + 8]
mov eax, dword [ecx + 0x80934]
mov ecx, dword [ecx + 0x80930]
inc eax
mov edx, esi
call fcn.0043c690
jmp 0x43b5c1
mov eax, esi
mov byte [esi + 0x1a90], 1
mov dword [esi + 0x1a98], ebp
mov byte [esi + 0x1ab0], 1
call fcn.0043da30
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0043de60
mov edi, dword [esi + 8]
mov ecx, dword [edi + 0x1f8c]
call fcn.00464186
mov ecx, dword [edi + 0x1f8c]
push 0x1e
push 1
call fcn.0046423a
mov eax, esi
mov byte [esi + 0x1ab0], 1
call fcn.0043da30
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esi + 0x1acc], 1
mov eax, esi
mov byte [esi + 0x1ab0], 1
call fcn.0043da30
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 8]
fldz
mov edx, dword [eax + 0x80240]
lea ecx, [eax + 0x80240]
mov eax, dword [edx + 8]
sub esp, 8
fstp qword [esp]
push ebp
call eax
mov byte [esi + 0x1a90], 0
mov dword [esi + 0x1a98], ebp
mov byte [esi + 0x1ab0], 1
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 8]
fldz
mov edx, dword [eax + 0x801a0]
lea ecx, [eax + 0x801a0]
mov eax, dword [edx + 8]
sub esp, 8
fstp qword [esp]
push ebp
call eax
sub edi, ebp
je 0x43b733
sub edi, 1
je 0x43b717
sub edi, 1
jne 0x43b75d
cmp byte [esi + 0x60768], 0
jne 0x43b701
mov byte [esi + 0x60768], 1
add dword [esi + 0x60764], 5
mov eax, 0x12c
cmp dword [esi + 0x60764], eax
jl 0x43b75d
jmp 0x43b757
cmp byte [esi + 0x60768], 0
je 0x43b75d
mov byte [esi + 0x60768], 0
mov dword [esi + 0x60764], 0x64
jmp 0x43b75d
cmp byte [esi + 0x60768], 0
je 0x43b75d
add dword [esi + 0x60764], 0xfffffffb
mov eax, 0x64
cmp dword [esi + 0x60764], eax
jg 0x43b75d
mov byte [esi + 0x60768], 0
mov dword [esi + 0x60764], eax
mov eax, esi
mov byte [esi + 0x1ab0], 1
call fcn.0043da30
lea edi, [esi + 0x1d4]
push ebp
mov eax, edi
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b7af
push ebp
mov eax, edi
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x60]
call eax
test al, al
je 0x43b7af
mov eax, dword [esi + 8]
fldz
mov edx, dword [eax + 0x802e0]
lea ecx, [eax + 0x802e0]
mov eax, dword [edx + 8]
sub esp, 8
fstp qword [esp]
push ebp
call eax
lea edi, [esi + 0x1d4]
push ebp
mov eax, edi
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b80b
push ebp
mov eax, edi
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x68]
call eax
test al, al
je 0x43b80b
mov ecx, dword [esp + 0x24]
mov dword [ecx + 0x874], ebp
mov edi, dword [esi + 0x10]
lea ebx, [esi + 0x10]
push 8
add edi, 0x68
call fcn.0046855c
fmul qword [0x6cfca0]
call fcn.0064b350
mov edx, dword [edi]
push eax
mov ecx, ebx
call edx
mov byte [esi + 0x1fc], 1
jmp 0x43b869
lea edi, [esi + 0x1d4]
push ebp
mov eax, edi
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b869
push ebp
mov eax, edi
call fcn.0044fd00
mov ecx, dword [eax]
mov eax, dword [ecx]
mov edx, dword [eax + 0x6c]
call edx
test al, al
je 0x43b869
mov ecx, dword [esp + 0x24]
mov dword [ecx + 0x874], 1
mov edi, dword [esi + 0x10]
lea ebx, [esi + 0x10]
push 8
add edi, 0x68
call fcn.0046855c
fmul qword [0x6cfca0]
call fcn.0064b350
push eax
mov eax, dword [edi]
mov ecx, ebx
call eax
mov byte [esi + 0x1fc], 0
mov eax, dword [esi + 8]
push 1
lea ecx, [eax + 0x3a4]
call fcn.00467a82
test al, al
je 0x43b8fb
mov eax, dword [esi + 8]
fldz
mov edx, dword [eax + 0x80240]
lea ecx, [eax + 0x80240]
mov eax, dword [edx + 8]
sub esp, 8
fstp qword [esp]
push ebp
call eax
cmp byte [esi + 0x1acc], 0
lea edi, [esi + 0x17b8]
push ebp
mov eax, edi
je 0x43b8da
mov byte [esi + 0x1acc], 0
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b8fb
push ebp
mov eax, edi
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x78]
call eax
call fcn.0043e020
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [esi + 0x1acc], 1
call fcn.0044fd00
cmp dword [eax], ebp
je 0x43b8fb
push ebp
mov eax, edi
call fcn.0044fd00
mov ecx, dword [eax]
mov edx, dword [ecx]
mov eax, dword [edx + 0x74]
call eax
call fcn.0043e020
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret