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

Disassembly:
push esi
push edi
push ebx
push ebp
sub esp, 0xdc
mov ebp, dword [esp + 0x104]
movsd xmm0, qword [0x4fa9b0]
mov edi, dword [esp + 0x118]
comisd xmm0, xmmword [ebp]
jbe 0x42f4b8
mov dword [edi], 1
add esp, 0xdc
pop ebp
pop ebx
pop edi
pop esi
ret
mov eax, dword [0x21e9fa0]
push 0x4fa4a8
lea edx, [eax*8 + 0x5e4e230]
push edx
call fcn.004188d0
fstp qword [esp + 0x7c]
mov eax, dword [0x21e9fa0]
push 0x4fa4b0
fld qword [esp + 0x80]
fstp qword [0x21eaa10]
lea edx, [eax*8 + 0x5e4e230]
push edx
call fcn.004188d0
fstp qword [esp + 0x7c]
add esp, 0x10
fld qword [esp + 0x6c]
movsd xmm1, qword [esp + 0x6c]
movsd xmm0, qword [esp + 0x74]
mov esi, dword [esp + 0xf0]
fstp qword [0x21eaa18]
ucomisd xmm1, xmm0
jp 0x42f527
je 0x430a61
mov ebx, dword [0x21e9fa0]
mov eax, esi
mov edx, dword [esp + 0x10c]
mov dword [esp + 0xc], 0x21eaa20
mov dword [esp + 0x10], 0x21eaa28
lea ecx, [ebx*8 + 0x5e4e230]
mov dword [esp + 0x14], 0x21eaa30
mov dword [esp + 0x18], 0x21eaa38
mov dword [esp + 0x1c], edx
mov ebx, dword [esp + 0x110]
mov edx, dword [esp + 0x114]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], edi
mov edx, dword [esp + 0xf4]
mov dword [esp + 0x2c], 0xc
call fcn.0042e18c
movsd xmm1, qword [esi]
mov edx, 0x2020
movsd xmm0, qword [esp + 0x74]
mov word [0x21eaaf8], dx
comisd xmm1, xmm0
jbe 0x42f5db
movsd xmm0, qword [ebp]
comisd xmm0, xmmword [0x21eaa30]
jb 0x42f70b
mov edx, 0x6176
mov ecx, 0x70
mov word [0x21eaaf8], dx
mov byte [0x21eaafa], 0x70
jmp 0x42f723
movsd xmm0, qword [esp + 0x6c]
mov byte [0x21eaafa], 0x20
comisd xmm1, xmm0
jb 0x42f65f
push 0x4fa4a8
push esi
call fcn.004163e0
push 0x4fa4a8
push 0x21eaa40
fstp qword [0x21eaa40]
call fcn.004183e0
fstp qword [esp + 0xd0]
movsd xmm1, qword [esp + 0xd0]
add esp, 0x10
movsd xmm0, qword [ebp]
movsd qword [0x21eaa48], xmm1
comisd xmm0, xmm1
ja 0x42f5be
comisd xmm0, xmmword [0x21eaa30]
jb 0x42f70b
mov edx, 0x7032
mov ecx, 0x68
mov word [0x21eaaf8], dx
mov byte [0x21eaafa], 0x68
jmp 0x42f723
push 0x4fa4b0
push esi
call fcn.004163e0
push 0x4fa4b0
push 0x21eaa50
fstp qword [0x21eaa50]
call fcn.00418de0
fstp qword [esp + 0x74]
push 0x4fa4a8
push esi
movsd xmm0, qword [esp + 0x7c]
movsd qword [0x21eaa58], xmm0
call fcn.004163e0
push 0x4fa4a8
push 0x21eaa60
fstp qword [0x21eaa60]
call fcn.00419060
fstp qword [esp + 0xe0]
movsd xmm1, qword [esp + 0xe0]
add esp, 0x20
movsd xmm0, qword [ebp]
movsd qword [0x21eaa48], xmm1
comisd xmm0, xmm1
ja 0x42f5be
comisd xmm0, xmmword [esp + 0x64]
jae 0x42f642
comisd xmm0, xmmword [0x21eaa30]
jb 0x42f70b
mov edx, 0x696c
mov ecx, 0x71
mov word [0x21eaaf8], dx
mov byte [0x21eaafa], 0x71
jmp 0x42f723
mov edx, 0x7573
mov ecx, 0x70
mov word [0x21eaaf8], dx
mov byte [0x21eaafa], 0x70
movzx eax, byte [0x21eaaf8]
movzx edx, byte [0x21eaaf9]
shl eax, 0x10
shl edx, 8
or eax, edx
or eax, ecx
mov ebx, dword [esp + 0xf8]
cmp eax, 0x766170
jne 0x42fb5d
movsd xmm1, qword [esp + 0x74]
comisd xmm1, xmmword [esi]
jae 0x42f7a2
mov edx, dword [0x21e9fa0]
movsd xmm4, qword [0x21eaa30]
movsd xmm5, qword [0x21eaa28]
movsd xmm1, qword [edx*8 + 0x5e4e230]
movsd qword [0x21eaa68], xmm1
movsd qword [0x21eaa70], xmm1
movsd qword [0x21eaa78], xmm4
movsd qword [0x21eaa80], xmm5
movsd xmm3, qword [0x4fa968]
jmp 0x42f7e4
push 0x4fa4a8
push esi
call fcn.004163e0
add esp, 8
movsd xmm3, qword [0x4fa968]
movsd xmm4, qword [0x21eaa48]
movaps xmm5, xmm3
fst qword [0x21eaa68]
fstp qword [0x21eaa70]
movsd qword [0x21eaa80], xmm3
movsd qword [0x21eaa78], xmm4
movsd xmm0, qword [ebp]
movsd qword [0x21eaa88], xmm3
lea edx, [esp + 0xac]
movsd xmm6, qword [0x21eaa90]
subsd xmm0, xmm4
subsd xmm6, xmm5
movsd xmm3, qword [0x21eaa98]
movsd xmm1, qword [0x4fa940]
subsd xmm3, xmm4
divsd xmm6, xmm3
mulsd xmm6, xmm0
movsd xmm2, qword [0x4fa938]
addsd xmm6, xmm5
movsd qword [edx], xmm6
push 0x21eaaa0
push 0x21eaa88
push edx
movsd qword [0x21eaaa8], xmm1
movsd qword [0x21eaaa0], xmm2
call fcn.004489e0
add esp, 0xc
mov edx, dword [esp + 0x100]
movsd xmm0, qword [0x21eaa68]
movsd qword [ebx], xmm0
fstp qword [edx]
pxor xmm0, xmm0
mov esi, dword [esp + 0x100]
mov ebp, dword [esp + 0x114]
mov edi, dword [esp + 0x110]
push esi
push ebx
call fcn.004188d0
add esp, 8
mov edx, dword [esp + 0xf0]
mov ecx, 0x4fa4b8
mov dword [esp], esi
mov dword [esp + 4], edx
lea edx, [esp + 0xd8]
mov dword [esp + 8], 0x21eaab0
mov dword [esp + 0xc], 0x4fa4c0
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaaa0
dec eax
mov dword [esp + 0x18], 0x21eaa88
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525170
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4fabfc
mov dword [esp + 0x44], 0x4fac04
mov dword [esp + 0x48], 0x4fac14
mov dword [esp + 0x4c], 0x21ea820
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaab0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x42f880
movsd xmm2, qword [esi]
movaps xmm1, xmm2
movsd xmm0, qword [0x21eaa88]
subsd xmm1, qword [0x4fa940]
comisd xmm0, xmm1
jbe 0x430945
push 0x21eaac0
push ebx
addsd xmm2, qword [0x4fa940]
movsd qword [0x21eaac0], xmm2
call fcn.004188d0
fstp qword [esp + 0xc8]
movsd xmm1, qword [esp + 0xc8]
add esp, 8
subsd xmm1, qword [0x21eaab0]
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
pxor xmm0, xmm0
ucomisd xmm1, xmm0
jp 0x42f9d2
je 0x42fa02
movsd xmm0, qword [0x21eaab8]
lea eax, [esp + 0xb8]
divsd xmm0, xmm1
addsd xmm0, qword [esi]
movsd qword [eax], xmm0
push 0x21eaaa0
push 0x21eaa88
push eax
call fcn.004489e0
add esp, 0xc
fstp qword [esi]
push esi
push ebx
call fcn.004183e0
add esp, 8
mov edx, dword [esp + 0x104]
mov ecx, 0x4fa4b8
mov dword [esp], ebx
mov dword [esp + 4], edx
lea edx, [esp + 0xd4]
mov dword [esp + 8], 0x21eaad0
mov dword [esp + 0xc], 0x4fa4c8
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaa68
dec eax
mov dword [esp + 0x18], 0x21eaaa8
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525174
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4fac1c
mov dword [esp + 0x44], 0x4fac24
mov dword [esp + 0x48], 0x4fac34
mov dword [esp + 0x4c], 0x21ea920
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaad0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x42f880
movq xmm0, qword [0x4fa958]
movq xmm1, qword [0x4fa960]
mov dword [esp], 0x21ea920
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x4fac3c
movq qword [esp + 0x10], xmm1
mov esi, dword [esp + 0xf0]
mov edi, dword [esp + 0x118]
mov ebp, dword [esp + 0x104]
movq qword [esp + 0x18], xmm1
call fcn.00449e00
test eax, eax
je 0x4308da
movsd xmm1, qword [ebx]
movsd xmm0, qword [0x21eaaa8]
comisd xmm0, xmm1
ja 0x42f4a7
comisd xmm1, xmmword [0x21eaa68]
ja 0x42f4a7
jmp 0x4308d4
cmp eax, 0x327068
jne 0x42ffa4
movsd xmm0, qword [esi]
movsd xmm1, qword [esp + 0x6c]
comisd xmm0, xmm1
jbe 0x42fb91
mov edx, dword [0x21e9fa0]
movsd xmm0, qword [edx*8 + 0x5e4e230]
movsd qword [0x21eaa68], xmm0
jmp 0x42fba5
push 0x4fa4b0
push esi
call fcn.004163e0
add esp, 8
fstp qword [0x21eaa68]
push 0x4fa4a8
push esi
call fcn.004163e0
push 0x4fa4b0
movsd xmm0, qword [0x4fa968]
push 0x21eaa68
pxor xmm1, xmm1
fstp qword [0x21eaaa8]
movsd qword [0x21eaaa0], xmm0
movsd qword [0x21eaa88], xmm1
call fcn.00418de0
fstp qword [esp + 0x74]
movsd xmm0, qword [esp + 0x74]
push 0x4fa4a8
push 0x21eaaa8
movsd qword [0x21eaa58], xmm0
call fcn.00419060
fstp qword [esp + 0xd8]
movsd xmm1, qword [esp + 0xd8]
movsd xmm2, qword [ebp]
lea edx, [esp + 0xa4]
movsd xmm0, qword [edx - 0x28]
movsd qword [0x21eaa48], xmm1
subsd xmm2, xmm0
subsd xmm1, xmm0
divsd xmm2, xmm1
movsd qword [edx], xmm2
push 0x4fa4a8
push 0x4fa4b0
push edx
call fcn.004489e0
fstp qword [esp + 0xe4]
movsd xmm1, qword [esp + 0xe4]
movsd xmm0, qword [0x4fa968]
lea ecx, [esp + 0xb8]
movsd xmm2, qword [0x21eaaa8]
subsd xmm0, xmm1
mulsd xmm2, xmm1
mulsd xmm0, qword [0x21eaa68]
mov edx, dword [esp + 0x124]
addsd xmm2, xmm0
movsd qword [ecx], xmm2
push 0x21eaa68
push 0x21eaaa8
push ecx
movsd qword [edx], xmm1
call fcn.004489e0
add esp, 0x30
fstp qword [ebx]
movsd xmm0, qword [0x4fa940]
mov esi, dword [esp + 0x100]
mov ebp, dword [esp + 0x114]
mov edi, dword [esp + 0x110]
push esi
push ebx
call fcn.004183e0
add esp, 8
mov edx, dword [esp + 0x104]
mov ecx, 0x4fa4b8
mov dword [esp], esi
mov dword [esp + 4], edx
lea edx, [esp + 0xd0]
mov dword [esp + 8], 0x21eaad0
mov dword [esp + 0xc], 0x4fa4c0
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaaa0
dec eax
mov dword [esp + 0x18], 0x21eaa88
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525170
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4fac40
mov dword [esp + 0x44], 0x4fac48
mov dword [esp + 0x48], 0x4fac58
mov dword [esp + 0x4c], 0x21ea820
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaad0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x42fcc7
movsd xmm2, qword [esi]
movaps xmm1, xmm2
movsd xmm0, qword [0x21eaa88]
subsd xmm1, qword [0x4fa940]
comisd xmm0, xmm1
jbe 0x43098c
push 0x21eaac0
push ebx
addsd xmm2, qword [0x4fa940]
movsd qword [0x21eaac0], xmm2
call fcn.004183e0
fstp qword [esp + 0xc8]
movsd xmm1, qword [esp + 0xc8]
add esp, 8
subsd xmm1, qword [0x21eaad0]
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
pxor xmm0, xmm0
ucomisd xmm1, xmm0
jp 0x42fe19
je 0x42fe49
movsd xmm0, qword [0x21eaab8]
lea eax, [esp + 0xa0]
divsd xmm0, xmm1
addsd xmm0, qword [esi]
movsd qword [eax], xmm0
push 0x21eaaa0
push 0x21eaa88
push eax
call fcn.004489e0
add esp, 0xc
fstp qword [esi]
push esi
push ebx
call fcn.004188d0
add esp, 8
mov edx, dword [esp + 0xf0]
mov ecx, 0x4fa4b8
mov dword [esp], ebx
mov dword [esp + 4], edx
lea edx, [esp + 0xcc]
mov dword [esp + 8], 0x21eaab0
mov dword [esp + 0xc], 0x4fa4c8
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaa68
dec eax
mov dword [esp + 0x18], 0x21eaaa8
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525174
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4fac60
mov dword [esp + 0x44], 0x4fac68
mov dword [esp + 0x48], 0x4fac78
mov dword [esp + 0x4c], 0x21ea920
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaab0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x42fcc7
movq xmm0, qword [0x4fa958]
movq xmm1, qword [0x4fa960]
mov dword [esp], 0x21ea920
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x4fac80
movq qword [esp + 0x10], xmm1
mov esi, dword [esp + 0xf0]
mov edi, dword [esp + 0x118]
mov ebp, dword [esp + 0x104]
movq qword [esp + 0x18], xmm1
call fcn.00449e00
test eax, eax
je 0x4308da
movsd xmm1, qword [ebx]
movsd xmm0, qword [0x21eaaa8]
comisd xmm0, xmm1
ja 0x42f4a7
comisd xmm1, xmmword [0x21eaa68]
ja 0x42f4a7
jmp 0x4308d4
cmp eax, 0x6c6971
jne 0x4303db
mov edx, dword [0x21e9fa0]
movsd xmm5, qword [0x21eaa50]
movsd xmm2, qword [0x21eaa58]
movsd xmm4, qword [edx*8 + 0x5e4e230]
subsd xmm0, xmm2
movsd xmm1, qword [0x21eaa30]
movaps xmm3, xmm4
push 0x21eaa68
push 0x21eaaa8
movsd xmm6, qword [0x4fa9b8]
subsd xmm3, xmm5
subsd xmm1, xmm2
divsd xmm3, xmm1
mulsd xmm3, xmm0
push ebx
pxor xmm0, xmm0
addsd xmm3, xmm5
mov dword [edi], 0xa
movsd qword [ebx], xmm3
movsd qword [0x21eaa68], xmm4
movsd qword [0x21eaaa8], xmm5
movsd qword [0x21eaaa0], xmm0
movsd qword [0x21eaa88], xmm6
call fcn.004489e0
push 0x4fa4b0
push ebx
fstp qword [ebx]
call fcn.004183e0
fstp qword [esp + 0x78]
push 0x21eaa90
push ebx
movsd xmm0, qword [esp + 0x80]
movsd xmm1, qword [str.333333]
movsd qword [0x21eaa78], xmm0
movsd qword [0x21eaa90], xmm1
call fcn.004183e0
fstp qword [esp + 0xdc]
movsd xmm2, qword [esp + 0xdc]
movsd xmm4, qword [0x21eaa90]
lea edx, [esp + 0x90]
movsd xmm1, qword [edx - 0x10]
pxor xmm0, xmm0
movsd xmm3, qword [ebp]
subsd xmm0, xmm4
subsd xmm1, xmm2
subsd xmm3, xmm2
divsd xmm0, xmm1
mulsd xmm0, xmm3
movsd qword [0x21eaa98], xmm2
addsd xmm0, xmm4
movsd qword [edx], xmm0
push 0x21eaaa0
push 0x21eaa88
push edx
call fcn.004489e0
add esp, 0x28
mov edx, dword [esp + 0x100]
mov esi, dword [esp + 0x100]
mov ebp, dword [esp + 0x114]
mov edi, dword [esp + 0x110]
fstp qword [edx]
movsd xmm0, qword [0x4fa940]
push esi
push ebx
call fcn.004188d0
add esp, 8
mov edx, dword [esp + 0xf0]
mov ecx, 0x4fa4b8
mov dword [esp], esi
mov dword [esp + 4], edx
lea edx, [esp + 0xc8]
mov dword [esp + 8], 0x21eaab0
mov dword [esp + 0xc], 0x4fa4c0
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaaa0
dec eax
mov dword [esp + 0x18], 0x21eaa88
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525170
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4fac84
mov dword [esp + 0x44], 0x4fac8c
mov dword [esp + 0x48], 0x4fac9c
mov dword [esp + 0x4c], 0x21ea820
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaab0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x4300fe
movsd xmm2, qword [esi]
movaps xmm1, xmm2
movsd xmm0, qword [0x21eaa88]
subsd xmm1, qword [0x4fa940]
comisd xmm0, xmm1
jbe 0x4309d3
push 0x21eaac0
push ebx
addsd xmm2, qword [0x4fa940]
movsd qword [0x21eaac0], xmm2
call fcn.004188d0
fstp qword [esp + 0xc8]
movsd xmm1, qword [esp + 0xc8]
add esp, 8
subsd xmm1, qword [0x21eaab0]
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
pxor xmm0, xmm0
ucomisd xmm1, xmm0
jp 0x430250
je 0x430280
movsd xmm0, qword [0x21eaab8]
lea eax, [esp + 0x84]
divsd xmm0, xmm1
addsd xmm0, qword [esi]
movsd qword [eax], xmm0
push 0x21eaaa0
push 0x21eaa88
push eax
call fcn.004489e0
add esp, 0xc
fstp qword [esi]
push esi
push ebx
call fcn.004183e0
add esp, 8
mov edx, dword [esp + 0x104]
mov ecx, 0x4fa4b8
mov dword [esp], ebx
mov dword [esp + 4], edx
lea edx, [esp + 0xa8]
mov dword [esp + 8], 0x21eaad0
mov dword [esp + 0xc], 0x4fa4c8
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaa68
dec eax
mov dword [esp + 0x18], 0x21eaaa8
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525174
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4faca4
mov dword [esp + 0x44], 0x4facac
mov dword [esp + 0x48], 0x4facbc
mov dword [esp + 0x4c], 0x21ea920
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaad0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x4300fe
movq xmm0, qword [0x4fa958]
movq xmm1, qword [0x4fa960]
mov dword [esp], 0x21ea920
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x4facc4
movq qword [esp + 0x10], xmm1
mov esi, dword [esp + 0xf0]
mov edi, dword [esp + 0x118]
mov ebp, dword [esp + 0x104]
movq qword [esp + 0x18], xmm1
call fcn.00449e00
test eax, eax
je 0x4308da
movsd xmm1, qword [ebx]
movsd xmm0, qword [0x21eaaa8]
comisd xmm0, xmm1
ja 0x42f4a7
comisd xmm1, xmmword [0x21eaa68]
ja 0x42f4a7
jmp 0x4308d4
cmp eax, 0x737570
jne 0x4308da
movsd xmm0, qword [esp + 0x6c]
comisd xmm0, xmmword [esi]
ja 0x430404
movsd xmm1, qword [0x4fa9b8]
movsd xmm0, qword [0x4fa938]
jmp 0x430439
push 0x4fa4b0
push esi
call fcn.004163e0
push 0x4fa4b0
push 0x21eaa40
fstp qword [0x21eaa40]
call fcn.004181e0
fstp st(0)
add esp, 0x10
movsd xmm0, qword [0x4fa938]
movsd xmm1, qword [0x4fa9b8]
mov edx, dword [0x21e9fa0]
movsd qword [0x21eaa88], xmm1
movsd xmm2, qword [0x4fa9a0]
movsd xmm1, qword [edx*8 + 0x5e4e170]
mulsd xmm2, xmm1
movsd xmm3, qword [edx*8 + 0x5e4e230]
movsd qword [0x21eaaa0], xmm0
movsd xmm4, qword [edx*8 + 0x5e4e188]
movsd xmm0, qword [0x4fa940]
movsd qword [esp + 0x64], xmm1
movsd qword [esp + 0x6c], xmm3
movsd qword [esp], xmm4
movsd qword [0x21eaaa8], xmm0
movsd qword [0x21eaa68], xmm2
movsd qword [0x21eaa70], xmm3
mov dword [esp + 8], 0xa
call fcn.004c1220
fstp qword [esp + 0xc0]
mov eax, esi
movsd xmm0, qword [esp + 0xc0]
mulsd xmm0, qword [esp + 0x6c]
mov edx, dword [esp + 0x110]
mov ecx, dword [esp + 0x114]
minsd xmm0, qword [esp + 0x64]
mov dword [esp + 0xc], 0x21eaad8
mov dword [esp + 0x10], 0x21eaa90
mov dword [esp + 0x14], 0x21eaa98
mov dword [esp + 0x18], 0x21eaae0
mov dword [esp + 0x1c], 0x21eaae8
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ecx
mov ecx, 0x21eaaf0
mov dword [esp + 0x28], edi
mov edx, dword [esp + 0xf4]
movsd qword [0x21eaaf0], xmm0
mov dword [esp + 0x2c], 0xc
call fcn.0042e18c
movsd xmm1, qword [0x21eaa30]
lea edx, [esp + 0x64]
movsd xmm4, qword [0x21eaaf0]
movsd xmm3, qword [edx + 8]
movsd xmm0, qword [0x21eaa98]
subsd xmm4, xmm3
subsd xmm0, xmm1
divsd xmm4, xmm0
movsd xmm2, qword [ebp]
subsd xmm2, xmm1
mulsd xmm4, xmm2
addsd xmm4, xmm3
movsd qword [edx], xmm4
push 0x21eaa68
push 0x21eaaa8
push edx
call fcn.004489e0
movsd xmm1, qword [0x21eaa30]
lea edx, [esp + 0x78]
movsd xmm3, qword [0x21eaa28]
movsd xmm4, qword [0x21eaa90]
movsd xmm0, qword [0x21eaa98]
subsd xmm4, xmm3
subsd xmm0, xmm1
divsd xmm4, xmm0
movsd xmm2, qword [ebp]
fstp qword [ebx]
subsd xmm2, xmm1
mulsd xmm4, xmm2
addsd xmm4, xmm3
movsd qword [edx], xmm4
push 0x21eaaa0
push 0x21eaa88
push edx
call fcn.004489e0
add esp, 0x18
mov edx, dword [esp + 0x100]
mov esi, dword [esp + 0x100]
mov ebp, dword [esp + 0x114]
pxor xmm0, xmm0
mov edi, dword [esp + 0x110]
fstp qword [edx]
push esi
push ebx
call fcn.004183e0
add esp, 8
mov edx, dword [esp + 0x104]
mov ecx, 0x4fa4b8
mov dword [esp], esi
mov dword [esp + 4], edx
lea edx, [esp + 0xb4]
mov dword [esp + 8], 0x21eaad0
mov dword [esp + 0xc], 0x4fa4c0
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaaa0
dec eax
mov dword [esp + 0x18], 0x21eaa88
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525170
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4facc8
mov dword [esp + 0x44], 0x4facd0
mov dword [esp + 0x48], 0x4face0
mov dword [esp + 0x4c], 0x21ea820
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaad0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x430603
movsd xmm2, qword [esi]
movaps xmm1, xmm2
movsd xmm0, qword [0x21eaa88]
subsd xmm1, qword [0x4fa940]
comisd xmm0, xmm1
jbe 0x430a1a
push 0x21eaac0
push ebx
addsd xmm2, qword [0x4fa940]
movsd qword [0x21eaac0], xmm2
call fcn.004183e0
fstp qword [esp + 0xc8]
movsd xmm1, qword [esp + 0xc8]
add esp, 8
subsd xmm1, qword [0x21eaad0]
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
pxor xmm0, xmm0
ucomisd xmm1, xmm0
jp 0x430755
je 0x430782
movsd xmm0, qword [0x21eaab8]
lea eax, [esp + 0x7c]
divsd xmm0, xmm1
addsd xmm0, qword [esi]
movsd qword [eax], xmm0
push 0x21eaaa0
push 0x21eaa88
push eax
call fcn.004489e0
add esp, 0xc
fstp qword [esi]
push esi
push ebx
call fcn.004188d0
add esp, 8
mov edx, dword [esp + 0xf0]
mov ecx, 0x4fa4b8
mov dword [esp], ebx
mov dword [esp + 4], edx
lea edx, [esp + 0x9c]
mov dword [esp + 8], 0x21eaab0
mov dword [esp + 0xc], 0x4fa4c8
mov dword [esp + 0x10], ecx
mov eax, dword [ebp]
mov dword [esp + 0x14], 0x21eaa68
dec eax
mov dword [esp + 0x18], 0x21eaaa8
mov dword [edx], eax
mov eax, 0x4fa4d0
mov dword [esp + 0x1c], 0x4fa4d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x525174
mov dword [esp + 0x38], 0x21eaab8
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], 0x4face8
mov dword [esp + 0x44], str.state_idx16
mov dword [esp + 0x48], 0x4fad00
mov dword [esp + 0x4c], 0x21ea920
mov dword [esp + 0x50], 0xc
mov dword [esp + 0x54], 6
mov dword [esp + 0x58], 0xc
mov dword [esp + 0x5c], 6
fstp qword [0x21eaab0]
mov dword [esp + 0x60], 0x50
call fcn.004415b0
cmp eax, 1
je 0x430603
movq xmm0, qword [0x4fa958]
movq xmm1, qword [0x4fa960]
mov dword [esp], 0x21ea920
movq qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x4fad08
movq qword [esp + 0x10], xmm1
mov esi, dword [esp + 0xf0]
mov edi, dword [esp + 0x118]
mov ebp, dword [esp + 0x104]
movq qword [esp + 0x18], xmm1
call fcn.00449e00
test eax, eax
je 0x4308da
movsd xmm1, qword [ebx]
movsd xmm0, qword [0x21eaaa8]
comisd xmm0, xmm1
ja 0x42f4a7
comisd xmm1, xmmword [0x21eaa68]
ja 0x42f4a7
mov dword [edi], 2
mov eax, 0x4fa4d0
mov edx, 0x4fa4d8
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x100]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0xf4]
mov edi, dword [esp + 0xfc]
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ecx
mov ecx, edx
mov ebp, dword [esp + 0x10c]
mov dword [esp + 0x34], ebp
call fcn.0042deec
add esp, 0xdc
pop ebp
pop ebx
pop edi
pop esi
ret
push 0x21eaac0
push ebx
movsd qword [0x21eaac0], xmm1
call fcn.004188d0
fstp qword [esp + 0xc8]
movsd xmm0, qword [esp + 0xc8]
add esp, 8
movsd xmm1, qword [0x21eaab0]
subsd xmm1, xmm0
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
jmp 0x42f9c6
push 0x21eaac0
push ebx
movsd qword [0x21eaac0], xmm1
call fcn.004183e0
fstp qword [esp + 0xc8]
movsd xmm0, qword [esp + 0xc8]
add esp, 8
movsd xmm1, qword [0x21eaad0]
subsd xmm1, xmm0
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
jmp 0x42fe0d
push 0x21eaac0
push ebx
movsd qword [0x21eaac0], xmm1
call fcn.004188d0
fstp qword [esp + 0xc8]
movsd xmm0, qword [esp + 0xc8]
add esp, 8
movsd xmm1, qword [0x21eaab0]
subsd xmm1, xmm0
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
jmp 0x430244
push 0x21eaac0
push ebx
movsd qword [0x21eaac0], xmm1
call fcn.004183e0
fstp qword [esp + 0xc8]
movsd xmm0, qword [esp + 0xc8]
add esp, 8
movsd xmm1, qword [0x21eaad0]
subsd xmm1, xmm0
divsd xmm1, qword [0x4fa940]
movsd qword [0x21eaac8], xmm1
jmp 0x430749
movsd xmm0, qword [esi]
ucomisd xmm0, xmm1
jne 0x42f527
jp 0x42f527
mov edx, dword [0x21e9fa0]
push 0x4fa4a8
lea ecx, [edx*8 + 0x5e4e230]
push ecx
call fcn.004183e0
fstp qword [esp + 0x6c]
mov edx, dword [0x21e9fa0]
push 0x4fa4b0
movsd xmm0, qword [esp + 0x70]
movsd qword [0x21eaa48], xmm0
lea ecx, [edx*8 + 0x5e4e230]
push ecx
call fcn.004183e0
fstp qword [esp + 0xd0]
movsd xmm0, qword [esp + 0xd0]
add esp, 0x10
movsd xmm3, qword [ebp]
movsd xmm1, qword [esp + 0x64]
movaps xmm2, xmm3
movsd qword [0x21eaa58], xmm0
subsd xmm2, xmm0
subsd xmm1, xmm0
divsd xmm2, xmm1
movsd qword [0x21eaa28], xmm2
movsd qword [0x21eaa30], xmm3
jmp 0x42f58f