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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x44
test eax, eax
push ebx
jne 0x42f133
pop ebx
add esp, 0x44
ret 0x3c
mov ebx, dword [esp + 0x58]
test ebx, ebx
jne 0x42f144
xor eax, eax
pop ebx
add esp, 0x44
ret 0x3c
cmp ebx, eax
jne 0x42f151
xor eax, eax
pop ebx
add esp, 0x44
ret 0x3c
fld qword [esp + 0x78]
fcom qword [0x4c4a80]
fnstsw ax
test ah, 1
jne 0x42f16c
fstp st(0)
fld qword [0x4c4a80]
jmp 0x42f183
fld qword [0x4c4a78]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x42f183
fstp st(0)
fld qword [0x4c4a78]
mov eax, dword [esp + 0x50]
push ebp
push esi
push edi
mov edi, dword [esp + 0x7c]
lea ecx, [eax + eax*2]
mov dword [esp + 0x2c], ecx
mov esi, dword [esp + 0x68]
xor ecx, ecx
test edi, edi
setle cl
dec ecx
lea edx, [esi + esi*2]
and ecx, edi
mov dword [esp + 0x28], edx
mov ebp, ecx
cmp ebp, eax
mov dword [esp + 0x10], ebp
jl 0x42f1ba
mov dword [esp + 0x10], eax
mov ebp, eax
add esi, edi
xor ecx, ecx
test esi, esi
setle cl
dec ecx
and ecx, esi
cmp ecx, eax
mov dword [esp + 0x84], ecx
jl 0x42f1d8
mov dword [esp + 0x84], eax
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x60]
xor eax, eax
test edx, edx
setle al
dec eax
and eax, edx
cmp eax, ecx
jl 0x42f1f3
mov eax, ecx
mov esi, dword [esp + 0x6c]
add esi, edx
xor edx, edx
test esi, esi
setle dl
dec edx
and edx, esi
cmp edx, ecx
mov dword [esp + 0x18], edx
jl 0x42f20f
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x8c]
xor edx, edx
mov dl, ch
mov dword [esp + 0x60], eax
shr ecx, 0x10
mov byte [esp + 0x68], cl
mov ecx, dword [esp + 0x74]
mov byte [esp + 0x5c], dl
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x18]
cmp eax, ecx
mov dword [esp + 0x38], edx
jae 0x42f4b9
mov edx, dword [esp + 0x28]
mov esi, eax
imul esi, dword [esp + 0x2c]
imul eax, edx
mov ecx, edx
mov dword [esp + 0x30], esi
imul ecx, dword [esp + 0x80]
mov dword [esp + 0x14], eax
mov dword [esp + 0x50], ecx
mov eax, dword [esp + 0x84]
mov dword [esp + 0x6c], ebp
cmp ebp, eax
jae 0x42f48e
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x58]
sub eax, ecx
lea ecx, [edi + edi*2]
mov edi, dword [esp + 0x58]
mov dword [esp + 0x34], ecx
lea ecx, [edx + 1]
lea edx, [ebp + ebp*2]
add esi, edx
sub edi, ecx
lea ebp, [eax + edx]
mov eax, dword [esp + 0x58]
add esi, ecx
sub eax, ecx
lea ecx, [eax + 2]
mov dword [esp + 0x4c], ecx
jmp 0x42f2af
mov ebx, dword [esp + 0x64]
mov edx, dword [esp + 0x34]
mov cl, byte [ecx + esi]
mov eax, ebp
mov byte [esp + 0x24], cl
sub eax, edx
mov dl, byte [edi + esi]
mov byte [esp + 0x1c], dl
mov dl, byte [esi]
mov cl, byte [eax + ebx]
mov byte [esp + 0x20], dl
mov dl, byte [ebx + eax + 1]
mov al, byte [ebx + eax + 2]
mov bl, byte [esp + 0x8c]
mov byte [esp + 0x3c], cl
cmp cl, bl
mov byte [esp + 0x40], dl
mov byte [esp + 0x48], al
jne 0x42f315
cmp dl, byte [esp + 0x5c]
jne 0x42f315
cmp al, byte [esp + 0x68]
jne 0x42f315
mov eax, dword [esp + 0x90]
test eax, eax
je 0x42f315
mov bl, byte [esp + 0x1c]
mov cl, byte [esp + 0x20]
mov al, byte [esp + 0x24]
jmp 0x42f44c
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x74]
mov eax, ecx
xor edx, edx
div ebx
fld st(0)
xor edx, edx
imul eax, ebx
mov ebx, dword [esp + 0x78]
sub ecx, eax
mov eax, dword [esp + 0x60]
div ebx
mov edx, eax
mov eax, dword [esp + 0x60]
imul edx, ebx
sub eax, edx
mov edx, dword [esp + 0x74]
cmp ecx, edx
jae 0x42f38d
cmp eax, ebx
jae 0x42f38d
imul eax, dword [esp + 0x38]
fstp st(0)
mov edx, dword [esp + 0x70]
lea ecx, [ecx + ecx*2]
add edx, eax
xor eax, eax
mov al, byte [ecx + edx]
mov dword [esp + 0x80], eax
fild dword [esp + 0x80]
fmul qword [0x4c4a50]
fmul st(1)
fcom qword [0x4c4a80]
fnstsw ax
test ah, 1
jne 0x42f38d
fstp st(0)
fld qword [0x4c4a80]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x3c]
fld qword [0x4c4a80]
and ecx, 0xff
and edx, 0xff
fsub st(1)
mov dword [esp + 0x80], ecx
fild dword [esp + 0x80]
mov dword [esp + 0x80], edx
fmul st(1)
fild dword [esp + 0x80]
fmul st(3)
faddp st(1)
call fcn.004989f0
mov ecx, dword [esp + 0x40]
mov bl, al
mov eax, dword [esp + 0x20]
and ecx, 0xff
and eax, 0xff
mov dword [esp + 0x80], eax
fild dword [esp + 0x80]
mov dword [esp + 0x80], ecx
fmul st(1)
fild dword [esp + 0x80]
fmul st(3)
faddp st(1)
call fcn.004989f0
mov edx, dword [esp + 0x24]
mov byte [esp + 0x80], al
mov eax, dword [esp + 0x48]
and edx, 0xff
mov dword [esp + 0x44], edx
and eax, 0xff
fild dword [esp + 0x44]
mov dword [esp + 0x44], eax
fmul st(1)
fild dword [esp + 0x44]
fmul st(3)
faddp st(1)
call fcn.004989f0
mov cl, byte [esp + 0x80]
fstp st(0)
fstp st(0)
mov byte [edi + esi], bl
mov edx, dword [esp + 0x84]
mov byte [esi], cl
mov ecx, dword [esp + 0x4c]
add ebp, 3
mov byte [ecx + esi], al
mov eax, dword [esp + 0x6c]
inc eax
add esi, 3
cmp eax, edx
mov dword [esp + 0x6c], eax
jb 0x42f2ab
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x60]
inc eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x14]
add eax, edx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x2c]
add esi, eax
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x60], eax
mov dword [esp + 0x30], esi
jb 0x42f264
pop edi
pop esi
pop ebp
mov eax, 1
fstp st(0)
pop ebx
add esp, 0x44
ret 0x3c