Function at 0x43e560
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 0x43e593
test al, al
je 0x43eb36
cmp byte [esi + 0x12c], 0
je 0x43e5a8
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 0x43eb30
cmp dword [esi + 0x158], 0
je 0x43eb30
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 0x43e5f2
mov ecx, dword [esi + 0x158]
jmp 0x43e5f4
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 0x43e8a5
cmp byte [esp + 0xd], 0
je 0x43e77b
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
cmp ecx, edx
jge 0x43e62d
cmp edi, eax
jl 0x43e640
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 0x43e8a5
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 0x43e8a0
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 0x43e863
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm2
comisd xmm4, xmm3
ja 0x43e8a5
cvtss2sd xmm3, xmm2
cvtps2pd xmm4, xmm0
comisd xmm4, xmm3
jbe 0x43e87d
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm1
comisd xmm4, xmm3
ja 0x43e8a5
cvtss2sd xmm3, xmm2
cvtss2sd xmm4, xmm1
comisd xmm3, xmm4
cvtps2pd xmm0, xmm0
jbe 0x43ea04
cvtss2sd xmm3, xmm2
comisd xmm0, xmm3
ja 0x43ea12
movss dword [esi + 0x78], xmm1
cmp byte [esp + 0xe], 0
je 0x43eb2c
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
sub edx, ecx
cmp byte [esp + 0xf], 0
je 0x43ea1c
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 0x43e8a0
movss dword [esi + 0x78], xmm2
jmp 0x43e8a5
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 0x43eb27
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 0x43eaf2
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm2
comisd xmm4, xmm3
ja 0x43eb2c
cvtss2sd xmm3, xmm2
cvtps2pd xmm4, xmm0
comisd xmm4, xmm3
jbe 0x43eb0c
cvtps2pd xmm3, xmm0
cvtss2sd xmm4, xmm1
comisd xmm4, xmm3
ja 0x43eb2c
cvtss2sd xmm3, xmm2
cvtss2sd xmm4, xmm1
comisd xmm3, xmm4
cvtps2pd xmm0, xmm0
jbe 0x43eb3f
cvtss2sd xmm3, xmm2
comisd xmm0, xmm3
ja 0x43eb49
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 0x43eb27
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