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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x208
mov eax, dword [0x43d040]
xor eax, esp
mov dword [esp + 0x204], eax
mov eax, dword [0x448b80]
push esi
push edi
cmp eax, dword [0x448b84]
je 0x42fd36
movss xmm0, dword [0x43a6fc]
xor edi, edi
mov ecx, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
movss dword [esp + 0xc], xmm0
mov dword [0x4486f0], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], edi
nop dword [eax]
mov eax, dword [0x448b80]
movups xmm0, xmmword [edi + eax]
movd esi, xmm0
movaps xmmword [esp + 0x30], xmm0
mov edi, dword [esp + 0x34]
cmp esi, dword [0x448700]
jne 0x42f536
test edi, edi
je 0x42fcf5
cmp byte [0x44855d], 0
je 0x42f56f
push 0
push 4
lea eax, [esp + 0xf0]
mov dword [esp + 0xf0], 0x4479c000
push eax
mov eax, dword [0x448700]
add eax, 0xff0
push eax
push dword [0x448698]
call ecx
mov ecx, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x4486a0], 0
je 0x42f5a2
push 0
push 4
lea eax, [esp + 0xf4]
mov dword [esp + 0xf4], 0x42960000
push eax
mov eax, dword [0x448700]
add eax, 0xdfb0
push eax
push dword [0x448698]
call ecx
push 0
push 4
lea eax, [esp + 0xf8]
push eax
lea eax, [esi + 0x2dcc]
push eax
push dword [0x448698]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm0, dword [esp + 0xf0]
mov eax, esi
or eax, edi
movss dword [esp + 0x18], xmm0
je 0x42fcef
mov eax, dword [esp + 0x38]
cmp eax, 0x20
je 0x42f5ec
cmp eax, 0x21
jne 0x42fcef
comiss xmm0, dword [0x43a63c]
jb 0x42fcef
movss xmm1, dword [0x43a6c8]
comiss xmm1, xmm0
jb 0x42fcef
mov edi, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea eax, [esp + 0xf4]
push 0
push 4
push eax
mov eax, dword [0x448704]
add eax, 0xf77980
push eax
push dword [0x448698]
call edi
push 0
push 4
lea eax, [esp + 0x100]
push eax
mov eax, dword [esp + 0x100]
add eax, 0xfe8
push eax
push dword [0x448698]
call edi
push 0
push 0xc
lea eax, [esp + 0x104]
push eax
mov eax, dword [esp + 0x104]
add eax, 0xe38
push eax
push dword [0x448698]
call edi
push 0
push 0xc
lea eax, [esp + 0x2c]
push eax
lea eax, [esi + 0xe38]
push eax
push dword [0x448698]
call edi
movss xmm1, dword [esp + 0x28]
subss xmm1, dword [esp + 0x100]
movss xmm2, dword [esp + 0x24]
subss xmm2, dword [esp + 0xfc]
movq xmm0, qword [esp + 0x24]
movq qword [0x448b50], xmm0
movss xmm0, dword [esp + 0x2c]
subss xmm0, dword [esp + 0x104]
mov eax, dword [esp + 0x2c]
movss dword [0x448b78], xmm1
mulss xmm1, xmm1
mov dword [0x448b58], eax
movss dword [0x448b74], xmm2
mulss xmm2, xmm2
movss dword [0x448b7c], xmm0
mulss xmm0, xmm0
addss xmm1, xmm2
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x42f70b
sqrtsd xmm0, xmm0
jmp 0x42f710
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
cvtsd2ss xmm0, xmm0
push 6
mov edx, esi
lea ecx, [esp + 0xb8]
movss dword [esp + 0xc], xmm0
call fcn.0042e950
mov eax, dword [0x4486b4]
add esp, 4
sub eax, 0
je 0x42f747
sub eax, 1
jne 0x42f752
mov eax, 3
mov dword [esp + 0x10], eax
jmp 0x42f756
mov eax, 6
mov dword [esp + 0x10], eax
jmp 0x42f756
mov eax, dword [esp + 0x10]
push eax
mov edx, esi
lea ecx, [esp + 0xac]
call fcn.0042e950
movq xmm0, qword [esp + 0xac]
sub esp, 8
mov eax, dword [esp + 0xbc]
mov ecx, esp
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
mov ecx, 0x448b68
call fcn.0042eb30
movq xmm0, qword [0x448b50]
mov ecx, esp
mov eax, dword [0x448b58]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
mov ecx, 0x448b5c
call fcn.0042eb30
movq xmm0, qword [esp + 0xc0]
mov ecx, esp
mov eax, dword [esp + 0xc8]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
mov ecx, 0x448b8c
call fcn.0042eb30
add esp, 0xc
test al, al
je 0x42fcef
movss xmm0, dword [0x448b60]
subss xmm0, dword [0x448b90]
push 0xff
push 0
cvttss2si eax, xmm0
mov dword [esp + 0x1c], eax
cdq
sub eax, edx
mov edi, eax
lea eax, [esp + 0x110]
push eax
sar edi, 1
call sub.VCRUNTIME140.dll_memset
movss xmm0, dword [0x43d2c4]
add esp, 0xc
movss xmm1, dword [esp + 8]
comiss xmm0, xmm1
jb 0x42fc0e
cmp byte [0x44855e], 0
je 0x42f950
movss xmm0, dword [esp + 8]
lea eax, [esp + 0xc0]
cvtps2pd xmm0, xmm0
sub esp, 8
mov dword [esp + 0x38], 0x367413b3
mov dword [esp + 0x3c], 0xc12d5804
mov dword [esp + 0x40], 0xf58facee
mov dword [esp + 0x44], 0x53af8ecf
mov dword [esp + 0x48], 0x1e76223b
movaps xmm1, xmmword [esp + 0x38]
movsd qword [esp], xmm0
mov dword [esp + 0x4c], 0xecc692a6
mov dword [esp + 0x50], 0x2c061de6
mov dword [esp + 0x54], 0x329fb587
movaps xmm2, xmmword [esp + 0x48]
push eax
movaps xmmword [esp + 0xcc], xmm1
lea eax, [esp + 0x114]
movaps xmmword [esp + 0xdc], xmm2
mov dword [esp + 0x8c], 0xd6d7ab53
mov dword [esp + 0x90], 0x79cde8bc
mov dword [esp + 0x94], 0x45374c4c
mov dword [esp + 0x98], 0x638aaef5
xorps xmm1, xmmword [esp + 0x8c]
mov dword [esp + 0x9c], 0x1e1b4415
mov dword [esp + 0xa0], 0xecc692a6
mov dword [esp + 0xa4], 0x2c061de6
mov dword [esp + 0xa8], 0x329fb587
xorps xmm2, xmmword [esp + 0x9c]
push eax
movaps xmmword [esp + 0xd0], xmm1
movaps xmmword [esp + 0xe0], xmm2
call fcn.00413400
cvttss2si edx, dword [0x448b60]
lea eax, [esp + 0x118]
push eax
push 0x447928
cvttss2si ecx, dword [0x448b5c]
call fcn.0042e340
add esp, 0x18
cmp byte [0x4486f4], 0
je 0x42fa0e
movss xmm0, dword [esp + 0x18]
lea eax, [esp + 0x30]
cvtps2pd xmm0, xmm0
sub esp, 8
mov dword [esp + 0x68], 0xecf7fb1b
mov dword [esp + 0x6c], 0x57fdcd9c
mov dword [esp + 0x70], 0x45372a7c
mov dword [esp + 0x74], 0x638aaef5
mov dword [esp + 0x78], 0xd6d7ab53
movaps xmm1, xmmword [esp + 0x68]
movsd qword [esp], xmm0
push eax
movaps xmmword [esp + 0x3c], xmm1
lea eax, [esp + 0x114]
mov dword [esp + 0x80], 0x79cde8bc
mov dword [esp + 0x84], 0x45374c4c
mov dword [esp + 0x88], 0x638aaef5
xorps xmm1, xmmword [esp + 0x7c]
push eax
movaps xmmword [esp + 0x40], xmm1
call fcn.00413400
movss xmm0, dword [0x448b60]
lea eax, [esp + 0x118]
addss xmm0, dword [0x43a6b8]
cvttss2si ecx, dword [0x448b5c]
push eax
push 0x447928
cvttss2si edx, xmm0
call fcn.0042e340
add esp, 0x18
cmp byte [0x4486a3], 0
je 0x42fbc4
movss xmm7, dword [0x448b5c]
xorps xmm0, xmm0
movsd xmm1, qword [0x43a690]
mov eax, edi
cdq
sub eax, edx
movss xmm4, dword [0x43a63c]
sar eax, 1
mov edx, dword [0x448560]
cvtsi2ss xmm0, eax
mov eax, dword [0x43d2c8]
subss xmm7, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x43a7d0]
mov eax, dword [0x43d2cc]
divsd xmm0, xmm1
cvtpd2ps xmm6, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x43a7d0]
mov eax, dword [0x43d2d0]
divsd xmm0, xmm1
cvtpd2ps xmm2, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x43a7d0]
mov eax, dword [0x43d2d4]
divsd xmm0, xmm1
cvtpd2ps xmm3, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x43a7d0]
divsd xmm0, xmm1
xorps xmm1, xmm1
comiss xmm1, xmm6
cvtpd2ps xmm5, xmm0
jbe 0x42fad8
xorps xmm0, xmm0
jmp 0x42fadf
movaps xmm0, xmm4
minss xmm0, xmm6
comiss xmm1, xmm2
movss xmm6, dword [0x43a6d8]
mulss xmm0, xmm6
addss xmm0, dword [0x43a618]
cvttss2si ecx, xmm0
jbe 0x42fb01
xorps xmm0, xmm0
jmp 0x42fb08
movaps xmm0, xmm4
minss xmm0, xmm2
movss xmm2, dword [0x43a618]
mulss xmm0, xmm6
addss xmm0, xmm2
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm1, xmm3
jbe 0x42fb2b
xorps xmm0, xmm0
jmp 0x42fb32
movaps xmm0, xmm4
minss xmm0, xmm3
mulss xmm0, xmm6
addss xmm0, xmm2
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm1, xmm5
ja 0x42fb4f
movaps xmm1, xmm4
minss xmm1, xmm5
movss xmm2, dword [0x448b90]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
push ecx
mov dword [esp], 0x3dcccccd
push 5
push ecx
mulss xmm1, xmm6
mov dword [esp], 0
addss xmm0, xmm7
movss dword [esp + 0x64], xmm7
movss dword [esp + 0x68], xmm2
addss xmm1, dword [0x43a618]
movss dword [esp + 0x5c], xmm0
movd xmm0, dword [esp + 0x20]
cvttss2si eax, xmm1
cvtdq2ps xmm0, xmm0
shl eax, 0x18
or eax, ecx
lea ecx, [edx + 0x1be4]
push eax
lea eax, [esp + 0x60]
push eax
addss xmm0, xmm2
lea eax, [esp + 0x6c]
push eax
movss dword [esp + 0x6c], xmm0
call fcn.0041d3c0
cmp byte [0x4486a2], 0
je 0x42fc08
movd xmm1, edi
cvtdq2ps xmm1, xmm1
movss xmm0, dword [0x448b5c]
divss xmm1, dword [0x43a658]
movd xmm3, dword [esp + 0x14]
cvttss2si edx, dword [0x448b60]
movss xmm2, dword [esp + 0x18]
subss xmm0, xmm1
cvtdq2ps xmm3, xmm3
cvttss2si ecx, xmm0
call fcn.0042f070
movss xmm1, dword [esp + 8]
movss xmm0, dword [0x43d2b8]
comiss xmm0, xmm1
jb 0x42fcef
mov eax, dword [0x44870c]
movss xmm2, dword [0x448b68]
movss xmm1, dword [0x448b6c]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
mov eax, dword [0x448708]
cvtdq2ps xmm0, xmm0
cdq
sub eax, edx
sar eax, 1
cmp byte [0x44773c], 0
subss xmm2, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm2
subss xmm1, xmm0
mulss xmm1, xmm1
addss xmm1, xmm2
cvtps2pd xmm0, xmm1
xorps xmm1, xmm1
je 0x42fcbb
ucomisd xmm1, xmm0
ja 0x42fc80
sqrtsd xmm0, xmm0
jmp 0x42fc85
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
mov ecx, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movd xmm0, dword [0x447754]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x42fcf5
movss xmm0, dword [esp + 0xc]
comiss xmm0, xmm1
jbe 0x42fcf5
movss dword [esp + 0xc], xmm1
mov dword [0x4486f0], esi
jmp 0x42fcf5
ucomisd xmm1, xmm0
ja 0x42fcc7
sqrtsd xmm0, xmm0
jmp 0x42fccc
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm1, dword [esp + 0xc]
mov ecx, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cvtsd2ss xmm0, xmm0
comiss xmm1, xmm0
jbe 0x42fcf5
movss dword [esp + 0xc], xmm0
mov dword [0x4486f0], esi
jmp 0x42fcf5
mov ecx, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov eax, dword [0x448b84]
mov esi, dword [esp + 0x1c]
sub eax, dword [0x448b80]
inc esi
mov edi, dword [esp + 0x20]
add edi, 0x10
sar eax, 4
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], edi
cmp esi, eax
jbe 0x42f510
cmp dword [0x4486f0], 0
je 0x42fd36
cmp byte [0x4486a1], 0
je 0x42fd36
call fcn.0042f220
mov ecx, dword [esp + 0x20c]
pop edi
pop esi
xor ecx, esp
call fcn.004331b4
mov esp, ebp
pop ebp
ret