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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x41be2f
sub esp, 0x58
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x18]
mov edx, dword fs:[0x14]
mov edx, dword [edx]
cmp dword [ecx], edx
je 0x41be2b
mov ecx, dword [edx + 0x18]
mov edx, dword [ecx + 0x78]
test edx, edx
jle 0x41b9e3
add esp, 0x58
ret
mov ecx, dword [ecx + 0x74]
test ecx, ecx
jne 0x41b9df
xor ecx, ecx
jmp 0x41b9f7
mov eax, dword [esp + 0x5c]
movzx ecx, byte [esp + 0x17]
mov byte [esp + 0x17], cl
mov edx, dword [eax + 0xd0]
xor ebx, ebx
sub ebx, edx
mov dword [esp + 0x28], ebx
mov edx, dword [eax + 0xd4]
fld qword [0x7e3ac0]
fld st(0)
fstp qword [esp + 0x40]
mov dword [esp], ebx
mov ebp, 0
sbb ebp, edx
mov dword [esp + 0x2c], ebp
mov dword [esp + 4], ebp
fstp st(0)
call fcn.00453eb0
fld qword [esp + 8]
fld qword [esp + 0x40]
fld st(1)
fmulp st(1)
fld st(0)
fstp qword [esp]
fstp st(0)
fstp st(0)
call fcn.00453e10
mov eax, dword [esp + 0xc]
test eax, eax
setl cl
mov edx, dword [esp + 8]
cmp edx, 0x10000
setb bl
test eax, eax
xchg ebp, ebx
sete bl
xchg ebp, ebx
and ebp, ebx
or ebp, ecx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x41bddb
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ecx
lea ebp, [0x7e3a88]
mov dword [esp], ebp
call fcn.00402810
mov eax, dword [esp + 4]
test eax, eax
seta cl
mov edx, dword [esp + 8]
test edx, edx
sete bl
xchg ebp, ebx
setg bl
xchg ebp, ebx
and ecx, ebx
or ecx, ebp
test cl, cl
jne 0x41bc55
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
movzx edx, byte [0x7db128]
test dl, dl
je 0x41bc4b
movzx edx, byte [esp + 0x17]
test dl, dl
je 0x41bc08
mov byte [esp + 0x17], dl
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
lea ebx, [0x4556a0]
mov dword [esp + 0x48], ebx
mov ebp, dword [esp + 0x5c]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.0045b260
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x44]
mov edx, dword [0x7e34e0]
test edx, edx
jne 0x41bbf5
mov dword [eax + 0x44], 0
test ecx, ecx
jne 0x41bbe7
mov ecx, dword [eax + 0xd4]
test ecx, ecx
setl cl
sete dl
mov ebx, dword [eax + 0xd0]
test ebx, ebx
setb bl
and ebx, edx
or ebx, ecx
test bl, bl
je 0x41bbaf
movzx ecx, byte [eax + 0x65]
test cl, cl
je 0x41bb9e
nop
lea eax, [0x692950]
mov dword [esp], eax
call fcn.0045b200
mov eax, dword [esp + 0x5c]
movzx ecx, byte [esp + 0x17]
jmp 0x41b9f7
call fcn.0041c290
movzx eax, byte [esp]
test al, al
je 0x41b9ee
movzx eax, byte [esp + 0x17]
test al, al
jne 0x41bbbc
add esp, 0x58
ret
mov byte [esp], 0x2c
mov dword [esp + 4], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.0044cfd0
jmp 0x41bbb8
call fcn.00418930
mov eax, dword [esp + 0x5c]
jmp 0x41bb58
lea edi, [eax + 0x44]
mov edx, eax
xor eax, eax
call fcn.0045c920
mov eax, edx
jmp 0x41bb50
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], ecx
mov byte [esp], 0x2b
mov dword [esp + 4], 1
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.0044cfd0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov edx, 1
jmp 0x41baea
movzx edx, byte [esp + 0x17]
jmp 0x41baea
mov ecx, dword [esp + 0x1c]
cmp ecx, edx
setg bl
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x18]
cmp eax, esi
xchg edi, ebx
setb bl
xchg edi, ebx
and edi, ebp
or ebx, edi
test bl, bl
jne 0x41bd43
mov eax, dword [esp + 0x5c]
mov edx, dword [eax + 0xd0]
mov ebx, dword [esp + 0x28]
add edx, ebx
mov ebx, dword [eax + 0xd4]
mov dword [eax + 0xd0], edx
mov edx, dword [esp + 0x2c]
adc ebx, edx
mov dword [eax + 0xd4], ebx
mov edx, esi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], esi
xor eax, eax
sub eax, esi
sub edx, esi
mov dword [esp + 0x20], edx
lea ebp, [0x7e3a88]
mov dword [esp], ebp
mov dword [esp + 4], eax
xor eax, eax
sub eax, esi
mov eax, 0
sbb eax, ecx
mov dword [esp + 8], eax
call fcn.00402820
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
sub eax, ecx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x3c]
sbb eax, ecx
test eax, eax
sete cl
mov edx, dword [esp + 0x20]
test edx, edx
sete bl
and ecx, ebx
test cl, cl
jne 0x41bd0a
mov ecx, edx
jmp 0x41bace
movzx eax, byte [esp + 0x17]
test al, al
jne 0x41bd17
add esp, 0x58
ret
nop
mov byte [esp], 0x2c
mov dword [esp + 4], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.0044cfd0
jmp 0x41bd13
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
mov ecx, dword [esp + 0x5c]
mov ebx, dword [ecx + 0xd0]
mov dword [esp + 0x34], ebx
mov ebp, dword [ecx + 0xd4]
mov dword [esp + 0x30], ebp
fld qword [0x7e3ac8]
fld st(0)
fstp qword [esp + 0x40]
mov dword [esp], eax
mov dword [esp + 4], edx
fstp st(0)
call fcn.00453eb0
fld qword [esp + 8]
fld qword [esp + 0x40]
fld st(0)
fmulp st(2)
fld st(1)
fstp qword [esp]
fstp st(0)
fstp st(0)
call fcn.00453e10
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x34]
mov edx, eax
add eax, ecx
mov ebx, eax
add eax, 1
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x5c]
mov dword [esi + 0xd0], eax
add edx, ecx
mov eax, dword [esp + 0x30]
adc ebp, eax
add ebx, 1
adc ebp, 0
mov dword [esi + 0xd4], ebp
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
jmp 0x41bca8
fld qword [0x7e3ac8]
fld st(0)
fstp qword [esp + 0x40]
mov dword [esp], 0x10000
mov dword [esp + 4], 0
fstp st(0)
call fcn.00453eb0
fld qword [esp + 8]
fld qword [esp + 0x40]
fld st(0)
fmulp st(2)
fld st(1)
fstp qword [esp]
fstp st(0)
fstp st(0)
call fcn.00453e10
mov ebx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
xor eax, eax
mov edx, 0x10000
jmp 0x41ba83
add esp, 0x58
ret
call fcn.0045b380
jmp fcn.0041b9a0