Function at 0x10072b30
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
mov eax, ecx
movss dword [ebp - 0x10], xmm2
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x1c], eax
push esi
push edi
mov edi, dword [0x1017bfd8]
cmp eax, 4
je 0x10072b5a
cmp eax, 5
je 0x10072b5a
xor dl, dl
jmp 0x10072b5c
mov dl, 1
mov ebx, dword [ebp + 0xc]
xorps xmm3, xmm3
mov esi, dword [ebp + 8]
mov ecx, ebx
sub ecx, esi
mov byte [ebp - 5], dl
ucomiss xmm2, xmm3
lahf
test ah, 0x44
jp 0x10072bae
cmp esi, ebx
je 0x10072bae
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x101456e0]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x101452dc]
comiss xmm0, xmm1
jbe 0x10072bae
movaps xmm2, xmm1
mulss xmm2, dword [edi + 0x2c60]
movss dword [ebp - 0x10], xmm2
mov eax, dword [edi + 0x1a34]
xorps xmm1, xmm1
cmp eax, 1
jne 0x10072c39
test edi, edi
jne 0x10072bc7
push edi
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
movss xmm0, dword [edi + 0xe0]
movss xmm4, dword [0x10145370]
comiss xmm0, xmm4
movss xmm5, dword [edi + 0xe4]
jb 0x10072cee
comiss xmm5, xmm4
jb 0x10072cee
movss xmm0, dword [edi + 0x434]
comiss xmm0, dword [0x10145040]
jbe 0x10072cee
cmp byte [edi + 0xfa], 0
movss xmm1, dword [edi + 0x370]
je 0x10072c1f
mulss xmm1, dword [0x10144f1c]
cmp byte [edi + 0xf9], 0
je 0x10072cee
mulss xmm1, dword [0x10145124]
jmp 0x10072cee
cmp eax, 2
jne 0x10072cee
test dl, dl
je 0x10072cb2
mov ecx, dword [ebp + 0x10]
call fcn.10068f90
movss xmm3, dword [0x10144f64]
mov edx, 3
push ecx
mov dword [esp], 0x41200000
lea ecx, [ebp - 0x18]
push 5
mov dword [ebp + 0xc], eax
call fcn.1004f660
add esp, 8
movss xmm1, dword [eax]
mov eax, dword [ebp + 0xc]
movaps xmm0, xmm1
movss dword [ebp - 0x14], xmm0
test eax, eax
jns 0x10072c90
movss xmm0, dword [0x10144ea8]
jmp 0x10072ce3
cmp eax, 0xa
jl 0x10072cda
movss xmm0, dword [0x10145124]
neg eax
movd xmm1, eax
cvtdq2ps xmm1, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll___libm_sse2_powf
movss xmm1, dword [ebp - 0x14]
jmp 0x10072ce3
movss xmm3, dword [0x10144f64]
xor eax, eax
push ecx
mov dword [esp], 0x41200000
lea ecx, [ebp - 0x18]
push 5
lea edx, [eax + 3]
call fcn.1004f660
add esp, 8
movss xmm1, dword [eax]
xor eax, eax
movss xmm0, dword [eax*4 + 0x10142a68]
maxss xmm0, dword [ebp - 0x10]
xorps xmm3, xmm3
movaps xmm2, xmm0
mov cl, byte [edi + 0x1a14]
mov edx, dword [ebp - 0xc]
mulss xmm1, xmm2
movss dword [ebp + 0xc], xmm1
cmp esi, ebx
je 0x10072d1c
mov eax, dword [edx]
cmp eax, ebx
jb 0x10072d0f
comiss xmm1, xmm3
ja 0x10072d18
cmp eax, esi
ja 0x10072d1c
comiss xmm3, xmm1
jbe 0x10072d1c
mov al, 1
jmp 0x10072d1e
xor al, al
test cl, cl
jne 0x10072d4b
test al, al
jne 0x10072d4b
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jnp 0x10072d5c
movaps xmm0, xmm1
mov byte [edi + 0x2c58], 1
addss xmm0, dword [edi + 0x2c5c]
movss dword [edi + 0x2c5c], xmm0
jmp 0x10072d5c
mov dword [edi + 0x2c5c], 0
mov byte [edi + 0x2c58], 0
cmp byte [edi + 0x2c58], 0
je 0x10072e23
movss xmm0, dword [edi + 0x2c5c]
mov esi, dword [edx]
call fcn.10111e30
mov edx, dword [ebp - 0x1c]
add esi, eax
mov ecx, dword [ebp + 0x10]
push esi
call fcn.10075300
mov esi, dword [ebp - 0xc]
mov ecx, eax
movss xmm1, dword [edi + 0x2c5c]
xor edx, edx
mov byte [edi + 0x2c58], 0
add esp, 4
sub ecx, dword [esi]
test eax, eax
cmovne edx, eax
mov eax, edx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [edi + 0x2c5c], xmm1
mov ecx, dword [esi]
mov edi, ecx
cmp ecx, edx
je 0x10072e14
mov edi, dword [ebp + 8]
cmp edi, ebx
je 0x10072e18
movss xmm0, dword [ebp + 0xc]
xorps xmm1, xmm1
cmp edx, edi
jb 0x10072dec
mov esi, ecx
cmp edx, ecx
jbe 0x10072df5
comiss xmm1, xmm0
jbe 0x10072df5
mov dl, byte [ebp - 5]
test dl, dl
jne 0x10072df8
mov eax, edi
jmp 0x10072df8
mov dl, byte [ebp - 5]
mov eax, edi
mov esi, ecx
jmp 0x10072df8
mov dl, byte [ebp - 5]
cmp eax, ebx
ja 0x10072e0d
mov edi, ecx
cmp eax, ecx
jae 0x10072e11
comiss xmm0, xmm1
jbe 0x10072e11
mov edi, esi
test dl, dl
jne 0x10072e11
mov eax, ebx
mov edi, esi
mov esi, dword [ebp - 0xc]
cmp edi, eax
je 0x10072e23
mov dword [esi], eax
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret