Function at 0x100731d0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
mov eax, ecx
movss dword [ebp - 0x18], xmm2
mov dword [ebp - 0x1c], eax
mov ebx, edx
mov dword [ebp - 0x10], ebx
push esi
mov esi, dword [0x1017bfd8]
push edi
cmp eax, 4
je 0x100731fc
mov byte [ebp - 6], 0
cmp eax, 5
jne 0x10073200
mov byte [ebp - 6], 1
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov edi, dword [ebp + 0xc]
cmp eax, ecx
jne 0x10073218
mov byte [ebp - 5], 0
cmp edi, edx
je 0x1007321c
mov byte [ebp - 5], 1
sub ecx, eax
xorps xmm0, xmm0
sbb edx, edi
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x10073262
cmp byte [ebp - 5], 0
je 0x10073262
call fcn.10111f50
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm0
movss xmm0, dword [0x101452dc]
comiss xmm0, xmm2
xorps xmm0, xmm0
jbe 0x1007325d
mulss xmm2, dword [esi + 0x2c60]
movss dword [ebp - 0x18], xmm2
jmp 0x10073262
movss xmm2, dword [ebp - 0x18]
mov eax, dword [esi + 0x1a34]
xorps xmm1, xmm1
cmp eax, 1
jne 0x100732f4
test esi, esi
jne 0x1007327f
push esi
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
movss xmm0, dword [esi + 0xe0]
movss xmm3, dword [0x10145370]
comiss xmm0, xmm3
movss xmm4, dword [esi + 0xe4]
jb 0x100733a8
comiss xmm4, xmm3
jb 0x100733a8
movss xmm0, dword [esi + 0x434]
comiss xmm0, dword [0x10145040]
jbe 0x100733a8
cmp byte [esi + 0xfa], 0
movss xmm1, dword [esi + 0x370]
je 0x100732d7
mulss xmm1, dword [0x10144f1c]
cmp byte [esi + 0xf9], 0
xorps xmm0, xmm0
je 0x100733ab
mulss xmm1, dword [0x10145124]
jmp 0x100733ab
cmp eax, 2
jne 0x100733ab
cmp byte [ebp - 6], 0
je 0x1007336e
mov ecx, dword [ebp + 0x18]
call fcn.10068f90
movss xmm3, dword [0x10144f64]
mov edx, 3
push ecx
mov dword [esp], 0x41200000
lea ecx, [ebp - 0x24]
push 5
mov edi, eax
call fcn.1004f660
add esp, 8
movss xmm1, dword [eax]
movaps xmm0, xmm1
movss dword [ebp - 0x14], xmm0
test edi, edi
jns 0x10073349
movss xmm0, dword [0x10144ea8]
jmp 0x1007339d
movaps xmm1, xmm0
cmp edi, 0xa
jl 0x10073394
movss xmm0, dword [0x10145124]
neg edi
movd xmm1, edi
cvtdq2ps xmm1, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll___libm_sse2_powf
movss xmm1, dword [ebp - 0x14]
jmp 0x1007339d
movss xmm3, dword [0x10144f64]
xor edi, edi
push ecx
mov dword [esp], 0x41200000
lea ecx, [ebp - 0x24]
push 5
lea edx, [edi + 3]
call fcn.1004f660
add esp, 8
movss xmm1, dword [eax]
movss xmm0, dword [edi*4 + 0x10142a68]
maxss xmm0, dword [ebp - 0x18]
mov edi, dword [ebp + 0xc]
movaps xmm2, xmm0
xorps xmm0, xmm0
cmp byte [ebp - 5], 0
mov dl, byte [esi + 0x1a14]
mulss xmm1, xmm2
movss dword [ebp - 0x14], xmm1
je 0x100733ea
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
cmp ecx, dword [ebp + 0x14]
jb 0x100733d6
ja 0x100733d1
cmp eax, dword [ebp + 0x10]
jb 0x100733d6
comiss xmm1, xmm0
ja 0x100733e6
cmp ecx, edi
ja 0x100733ea
jb 0x100733e1
cmp eax, dword [ebp + 8]
ja 0x100733ea
comiss xmm0, xmm1
jbe 0x100733ea
mov al, 1
jmp 0x100733ec
xor al, al
test dl, dl
jne 0x10073419
test al, al
jne 0x10073419
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x1007342a
movaps xmm0, xmm1
mov byte [esi + 0x2c58], 1
addss xmm0, dword [esi + 0x2c5c]
movss dword [esi + 0x2c5c], xmm0
jmp 0x1007342a
mov dword [esi + 0x2c5c], 0
mov byte [esi + 0x2c58], 0
cmp byte [esi + 0x2c58], 0
je 0x10073597
mov eax, dword [ebx]
xorps xmm0, xmm0
movss xmm1, dword [0x101452d4]
movlpd qword [ebp - 0x24], xmm0
movss xmm0, dword [esi + 0x2c5c]
comiss xmm0, xmm1
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 4]
mov dword [ebp - 0xc], eax
jb 0x10073479
subss xmm0, xmm1
comiss xmm1, xmm0
jbe 0x10073479
mov edi, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x20]
add edi, 0
adc ebx, 0x80000000
jmp 0x1007347f
mov ebx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
call fcn.10111e30
mov ecx, dword [ebp - 0x18]
add eax, edi
adc edx, ebx
add ecx, eax
mov eax, dword [ebp - 0xc]
adc eax, edx
mov edx, dword [ebp - 0x1c]
push eax
push ecx
mov ecx, dword [ebp + 0x18]
call fcn.10075460
mov ebx, eax
mov byte [esi + 0x2c58], 0
mov eax, dword [ebp - 0x10]
add esp, 8
mov ecx, ebx
mov edi, edx
sub ecx, dword [eax]
sbb edx, dword [eax + 4]
call fcn.10111fa0
movss xmm1, dword [esi + 0x2c5c]
mov edx, dword [ebp - 0x10]
cvtsd2ss xmm0, xmm0
subss xmm1, xmm0
movss dword [esi + 0x2c5c], xmm1
mov ecx, dword [edx]
mov eax, dword [edx + 4]
cmp ecx, ebx
jne 0x100734e8
cmp eax, edi
je 0x10073581
cmp byte [ebp - 5], 0
je 0x10073589
mov edx, dword [ebp + 0xc]
cmp edi, edx
jb 0x1007352f
ja 0x10073500
cmp ebx, dword [ebp + 8]
jb 0x1007352f
mov edx, ecx
mov esi, eax
cmp edi, eax
jb 0x10073542
ja 0x1007350e
cmp ebx, ecx
jbe 0x10073542
movss xmm0, dword [ebp - 0x14]
xorps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x1007354a
cmp byte [ebp - 6], 0
jne 0x1007354a
mov edx, dword [ebp + 0xc]
mov esi, eax
mov ebx, dword [ebp + 8]
mov edi, edx
mov edx, ecx
jmp 0x1007354a
movss xmm0, dword [ebp - 0x14]
mov edi, edx
mov ebx, dword [ebp + 8]
xorps xmm1, xmm1
mov edx, ecx
mov esi, eax
jmp 0x1007354a
movss xmm0, dword [ebp - 0x14]
xorps xmm1, xmm1
cmp edi, dword [ebp + 0x14]
ja 0x10073570
jb 0x10073556
cmp ebx, dword [ebp + 0x10]
ja 0x10073570
cmp edi, eax
ja 0x1007357e
jb 0x10073560
cmp ebx, ecx
jae 0x1007357e
comiss xmm0, xmm1
jbe 0x1007357e
cmp byte [ebp - 6], 0
mov eax, esi
mov dword [ebp - 0xc], edx
jne 0x1007357b
mov ebx, dword [ebp + 0x10]
mov eax, esi
mov edi, dword [ebp + 0x14]
mov dword [ebp - 0xc], edx
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
cmp ecx, ebx
jne 0x10073589
cmp eax, edi
je 0x10073597
mov dword [edx], ebx
mov al, 1
mov dword [edx + 4], edi
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