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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c
push ebx
push esi
mov esi, ecx
movzx eax, byte [esi + 0x39]
mov bl, byte [esi + 0x21]
mov cl, byte [esi + 0x69]
mov byte [esp + 9], al
mov al, byte [esi + 0x51]
push edi
mov byte [esp + 0xe], al
mov byte [esp + 0xf], cl
test bl, bl
jne 0x43e8a3
test al, al
je 0x43ee46
cmp byte [esi + 0x12c], 0
je 0x43e8b8
mov eax, 3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x12b], 0
mov al, byte [esi + 0x12c]
mov byte [esp + 0x14], al
mov byte [esi + 0x12c], 1
jne 0x43ee40
cmp dword [esi + 0x158], 0
je 0x43ee40
mov edx, dword [esi]
mov edx, dword [edx + 0x20]
lea eax, [esp + 0x28]
push eax
mov ecx, esi
call edx
cmp byte [esi + 0x12b], 0
jne 0x43e902
mov ecx, dword [esi + 0x158]
jmp 0x43e904
xor ecx, ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
push 0
lea edx, [esp + 0x1c]
push edx
call eax
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x2c]
test bl, bl
je 0x43ebb5
cmp byte [esp + 0xd], 0
je 0x43ea8b
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
cmp ecx, edx
jge 0x43e93d
cmp edi, eax
jl 0x43e950
mov cl, byte [esp + 0x14]
mov byte [esi + 0x12c], cl
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [esp + 0x20]
sub ebx, dword [esp + 0x18]
movss xmm6, dword [esi + 0x28]
movss xmm4, dword [esi + 0x10]
movss xmm5, dword [esi + 0x14]
movss xmm0, dword [esi + 0xc]
cvtps2pd xmm6, xmm6
cvtsi2ss xmm2, ebx
movaps xmm1, xmm2
cvtss2sd xmm7, xmm1
mulsd xmm6, xmm7
movss xmm7, dword [esi + 0x2c]
cvtss2sd xmm1, xmm1
cvtps2pd xmm7, xmm7
addsd xmm6, xmm7
cvtps2pd xmm7, xmm4
mulsd xmm7, xmm1
cvtpd2ps xmm6, xmm6
cvtss2sd xmm6, xmm6
cvtps2pd xmm1, xmm5
addsd xmm7, xmm1
cvtpd2ps xmm1, xmm7
cvtss2sd xmm1, xmm1
subsd xmm6, xmm1
cvtpd2ps xmm1, xmm6
movss xmm6, dword [esi + 0x24]
cvtps2pd xmm4, xmm4
mov ebx, edx
cvtss2sd xmm2, xmm2
mulsd xmm4, xmm2
cvtsi2ss xmm2, dword [esp + 0x18]
cvtps2pd xmm6, xmm6
sub ebx, ecx
cvtsi2ss xmm3, ebx
cvtss2sd xmm7, xmm3
mulsd xmm6, xmm7
cvtss2sd xmm3, xmm3
cvtps2pd xmm7, xmm0
cvtss2sd xmm1, xmm1
mulsd xmm7, xmm3
cvtss2sd xmm2, xmm2
addsd xmm4, xmm2
cvtpd2ps xmm6, xmm6
cvtss2sd xmm6, xmm6
cvtpd2ps xmm3, xmm7
cvtss2sd xmm3, xmm3
subsd xmm6, xmm3
divsd xmm1, xmm6
cvtsd2ss xmm1, xmm1
cvtss2sd xmm6, xmm1
movss dword [esi + 0x8c], xmm1
cvtps2pd xmm2, xmm5
addsd xmm4, xmm2
cvtpd2ps xmm2, xmm4
cvtss2sd xmm1, xmm1
cvtsi2ss xmm3, ecx
cvtss2sd xmm3, xmm3
cvtsi2ss xmm4, edx
cvtss2sd xmm4, xmm4
mulsd xmm4, xmm1
cvtpd2ps xmm1, xmm4
cvtss2sd xmm1, xmm1
mulsd xmm3, xmm6
cvtsd2ss xmm3, xmm3
cvtss2sd xmm4, xmm3
subsd xmm1, xmm4
cvtps2pd xmm4, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm1, xmm4
mulsd xmm1, xmm0
cvtss2sd xmm0, xmm3
addsd xmm1, xmm0
cvtsd2ss xmm0, xmm1
cvtss2sd xmm0, xmm0
cvtss2sd xmm2, xmm2
subsd xmm2, xmm0
cvtsd2ss xmm0, xmm2
movss dword [esi + 0x78], xmm0
jmp 0x43ebb5
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
movss xmm1, dword [esi + 0x84]
movss xmm3, dword [esi + 0xc]
cvtps2pd xmm1, xmm1
sub edx, ecx
cvtsi2ss xmm0, edx
mov edx, dword [esp + 0x30]
cvtps2pd xmm3, xmm3
mulsd xmm1, xmm3
cvtsi2ss xmm2, ecx
mov ecx, dword [esp + 0x28]
sub edx, ecx
cmp byte [esi + 0x20], 0
cvtsi2ss xmm3, edx
cvtss2sd xmm3, xmm3
mulsd xmm1, xmm3
cvtsi2ss xmm3, ecx
cvtss2sd xmm3, xmm3
addsd xmm1, xmm3
cvtpd2ps xmm3, xmm1
movss xmm1, dword [esi + 0x10]
cvtps2pd xmm1, xmm1
cvtss2sd xmm4, xmm0
mulsd xmm1, xmm4
cvtss2sd xmm4, xmm2
addsd xmm1, xmm4
movss xmm4, dword [esi + 0x14]
cvtps2pd xmm4, xmm4
addsd xmm1, xmm4
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
cvtss2sd xmm4, xmm3
subsd xmm1, xmm4
cvtpd2ps xmm1, xmm1
je 0x43ebb0
movss xmm4, dword [esi + 0x18]
cvtss2sd xmm0, xmm0
cvtps2pd xmm4, xmm4
mulsd xmm4, xmm0
cvtss2sd xmm0, xmm2
addsd xmm4, xmm0
movss xmm0, dword [esi + 0x1c]
cvtps2pd xmm0, xmm0
addsd xmm4, xmm0
cvtpd2ps xmm0, xmm4
cvtss2sd xmm2, xmm3
cvtss2sd xmm0, xmm0
subsd xmm0, xmm2
cvtpd2ps xmm2, xmm0
movss xmm0, dword [esi + 0x78]
cvtss2sd xmm3, xmm1
cvtps2pd xmm4, xmm0
comisd xmm4, xmm3
jbe 0x43eb73
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm2
comisd xmm4, xmm3
ja 0x43ebb5
cvtss2sd xmm3, xmm2
cvtps2pd xmm4, xmm0
comisd xmm4, xmm3
jbe 0x43eb8d
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm1
comisd xmm4, xmm3
ja 0x43ebb5
cvtss2sd xmm3, xmm2
cvtss2sd xmm4, xmm1
comisd xmm3, xmm4
cvtps2pd xmm0, xmm0
jbe 0x43ed14
cvtss2sd xmm3, xmm2
comisd xmm0, xmm3
ja 0x43ed22
movss dword [esi + 0x78], xmm1
cmp byte [esp + 0xe], 0
je 0x43ee3c
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
sub edx, ecx
cmp byte [esp + 0xf], 0
je 0x43ed2c
movss xmm6, dword [esi + 0x58]
movss xmm4, dword [esi + 0x40]
movss xmm5, dword [esi + 0x44]
movss xmm0, dword [esi + 0x3c]
cvtps2pd xmm6, xmm6
cvtsi2ss xmm2, edx
movaps xmm1, xmm2
cvtss2sd xmm7, xmm1
mulsd xmm6, xmm7
movss xmm7, dword [esi + 0x5c]
cvtss2sd xmm1, xmm1
cvtps2pd xmm7, xmm7
addsd xmm6, xmm7
cvtps2pd xmm7, xmm4
mulsd xmm1, xmm7
cvtpd2ps xmm6, xmm6
cvtss2sd xmm6, xmm6
cvtps2pd xmm7, xmm5
addsd xmm1, xmm7
cvtsd2ss xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm6, xmm1
cvtpd2ps xmm1, xmm6
movss xmm6, dword [esi + 0x54]
mov edx, eax
cvtps2pd xmm4, xmm4
cvtss2sd xmm2, xmm2
mulsd xmm4, xmm2
sub edx, edi
cvtps2pd xmm6, xmm6
cvtsi2ss xmm3, edx
cvtss2sd xmm7, xmm3
cvtss2sd xmm3, xmm3
mulsd xmm6, xmm7
cvtps2pd xmm7, xmm0
cvtss2sd xmm1, xmm1
mulsd xmm3, xmm7
cvtsd2ss xmm3, xmm3
cvtss2sd xmm3, xmm3
cvtpd2ps xmm6, xmm6
cvtsi2ss xmm2, ecx
cvtss2sd xmm2, xmm2
addsd xmm4, xmm2
cvtss2sd xmm6, xmm6
subsd xmm6, xmm3
divsd xmm1, xmm6
cvtsd2ss xmm1, xmm1
movss dword [esi + 0x90], xmm1
cvtss2sd xmm6, xmm1
cvtps2pd xmm2, xmm5
addsd xmm4, xmm2
cvtpd2ps xmm2, xmm4
cvtss2sd xmm1, xmm1
cvtsi2ss xmm4, eax
mov al, byte [esp + 0x14]
cvtss2sd xmm4, xmm4
mulsd xmm4, xmm1
cvtsi2ss xmm3, edi
cvtss2sd xmm3, xmm3
cvtpd2ps xmm1, xmm4
cvtss2sd xmm1, xmm1
mulsd xmm3, xmm6
cvtsd2ss xmm3, xmm3
cvtss2sd xmm4, xmm3
subsd xmm1, xmm4
cvtps2pd xmm4, xmm0
cvtps2pd xmm0, xmm0
mulsd xmm1, xmm4
mulsd xmm1, xmm0
cvtss2sd xmm0, xmm3
addsd xmm1, xmm0
cvtsd2ss xmm0, xmm1
cvtss2sd xmm0, xmm0
cvtss2sd xmm2, xmm2
subsd xmm2, xmm0
cvtsd2ss xmm0, xmm2
movss dword [esi + 0x7c], xmm0
mov byte [esi + 0x12c], al
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cvtss2sd xmm3, xmm1
comisd xmm0, xmm3
ja 0x43ebb0
movss dword [esi + 0x78], xmm2
jmp 0x43ebb5
movss xmm1, dword [esi + 0x88]
movss xmm3, dword [esi + 0x3c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm3, xmm3
mulsd xmm1, xmm3
sub eax, edi
cmp byte [esi + 0x50], 0
cvtsi2ss xmm3, eax
cvtss2sd xmm3, xmm3
mulsd xmm1, xmm3
cvtsi2ss xmm3, edi
cvtss2sd xmm3, xmm3
addsd xmm1, xmm3
cvtpd2ps xmm3, xmm1
movss xmm1, dword [esi + 0x40]
cvtps2pd xmm1, xmm1
cvtsi2ss xmm0, edx
cvtss2sd xmm4, xmm0
mulsd xmm1, xmm4
cvtsi2ss xmm2, ecx
cvtss2sd xmm4, xmm2
addsd xmm1, xmm4
movss xmm4, dword [esi + 0x44]
cvtps2pd xmm4, xmm4
addsd xmm1, xmm4
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
cvtss2sd xmm4, xmm3
subsd xmm1, xmm4
cvtpd2ps xmm1, xmm1
je 0x43ee37
movss xmm4, dword [esi + 0x48]
cvtss2sd xmm0, xmm0
cvtps2pd xmm4, xmm4
mulsd xmm4, xmm0
cvtss2sd xmm0, xmm2
addsd xmm4, xmm0
movss xmm0, dword [esi + 0x4c]
cvtps2pd xmm0, xmm0
addsd xmm4, xmm0
cvtpd2ps xmm0, xmm4
cvtss2sd xmm2, xmm3
cvtss2sd xmm0, xmm0
subsd xmm0, xmm2
cvtpd2ps xmm2, xmm0
movss xmm0, dword [esi + 0x7c]
cvtss2sd xmm3, xmm1
cvtps2pd xmm4, xmm0
comisd xmm4, xmm3
jbe 0x43ee02
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm2
comisd xmm4, xmm3
ja 0x43ee3c
cvtss2sd xmm3, xmm2
cvtps2pd xmm4, xmm0
comisd xmm4, xmm3
jbe 0x43ee1c
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm1
comisd xmm4, xmm3
ja 0x43ee3c
cvtss2sd xmm3, xmm2
cvtss2sd xmm4, xmm1
comisd xmm3, xmm4
cvtps2pd xmm0, xmm0
jbe 0x43ee4f
cvtss2sd xmm3, xmm2
comisd xmm0, xmm3
ja 0x43ee59
movss dword [esi + 0x7c], xmm1
mov al, byte [esp + 0x14]
mov byte [esi + 0x12c], al
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cvtss2sd xmm3, xmm1
comisd xmm0, xmm3
ja 0x43ee37
mov al, byte [esp + 0x14]
movss dword [esi + 0x7c], xmm2
pop edi
mov byte [esi + 0x12c], al
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret