Function at 0x1007ce30
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x120
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x10087230
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
mov edi, dword [0x1025afd0]
mov eax, dword [edi + 0x19e4]
mov byte [eax + 0x7c], 1
mov ebx, dword [edi + 0x19e4]
cmp byte [ebx + 0x7f], 0
jne 0x1007cfeb
mov esi, dword [ebp + 8]
mov ecx, ebx
push 0
push esi
call fcn.1004b380
mov dword [ebp - 0x20], eax
movss xmm1, dword [ebx + 0x14]
addss xmm1, dword [0x101a9a40]
movups xmmword [ebp - 0x88], xmm1
movss xmm0, dword [0x101b0a10]
minss xmm0, xmm1
movups xmmword [ebp - 0x78], xmm0
lea eax, [ebp - 0xb0]
push 0xbf800000
push 1
push 0
push esi
push eax
call fcn.10049fb0
add esp, 0x14
movss xmm3, dword [ebp - 0xac]
addss xmm3, dword [0x101a99bc]
movss xmm0, dword [ebp - 0xb0]
movups xmm4, xmmword [ebp - 0x78]
addss xmm4, dword [0x101a98f4]
xorps xmm2, xmm2
movups xmm1, xmmword [ebp - 0x88]
movss xmm2, xmm1
movaps xmm1, xmmword [0x101b0db0]
unpcklps xmm1, xmm0
cmpltps xmm2, xmm1
movaps xmm1, xmmword [0x101b0dc0]
unpcklps xmm1, xmm3
movaps xmm3, xmmword [0x101b0dd0]
movss xmm3, xmm4
andps xmm1, xmm2
pextrw eax, xmm2, 2
andnps xmm2, xmm3
orps xmm1, xmm2
movsd xmm2, qword [ebx + 0xc8]
addps xmm1, xmm2
addps xmm1, xmmword [0x101a9c60]
movss xmm3, dword [0x101b0aa0]
addps xmm3, xmm2
movlhps xmm3, xmm1
movups xmmword [ebp - 0xa8], xmm3
xorps xmm2, xmm2
test al, 1
je 0x1007cf69
addss xmm0, dword [edi + 0x1550]
movaps xmm2, xmm0
movaps xmm0, xmmword [0x101b0de0]
movss xmm0, xmm2
addps xmm0, xmm1
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x12c], eax
movlps qword [ebp - 0x124], xmm0
movss xmm0, dword [edi + 0x153c]
sub esp, 8
movss dword [esp + 4], xmm0
lea esi, [ebp - 0x12c]
mov dword [esp], esi
call fcn.1004c030
add esp, 8
lea eax, [ebp - 0xa8]
push eax
push dword [ebp - 0x20]
push esi
call fcn.1004c080
add esp, 0xc
test al, al
je 0x1007cfeb
mov eax, dword [ebp + 0xc]
cmp eax, 6
jae 0x1007da0f
mov esi, dword [ebp + 0x1c]
test esi, esi
je 0x1007d003
test eax, eax
je 0x1007d00f
mov dword [ebp - 0x78], esi
jmp 0x1007d02b
xor ebx, ebx
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
mov eax, ebx
add esp, 0x120
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [eax + eax*2]
mov eax, dword [eax*4 + 0x101b08fc]
jmp 0x1007d028
push 0x101effa7
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x1007cfe6
mov ecx, esi
call fcn.10078eb0
mov dword [ebp - 0x78], eax
push 1
mov esi, dword [ebp - 0x20]
push esi
push ebx
call fcn.1004c800
add esp, 0xc
mov dword [ebp - 0x88], ebx
mov ebx, eax
push esi
lea eax, [ebp - 0xa8]
push eax
call fcn.1004c690
add esp, 8
test bl, bl
mov esi, dword [ebp - 0x88]
jne 0x1007d078
test al, al
je 0x1007d069
cmp byte [edi + 0x3d0], 0
jne 0x1007d078
mov eax, dword [ebp - 0x20]
cmp dword [edi + 0x1afc], eax
jne 0x1007d242
push esi
mov ebx, dword [ebp - 0x20]
push ebx
call fcn.1004bb70
add esp, 8
push esi
push ebx
call fcn.1004bc70
add esp, 8
push esi
call fcn.1004d840
add esp, 4
mov dword [edi + 0x1a1c], 0xc
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xe0], 0
push dword [ebp + 8]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
test eax, eax
js 0x1007da17
mov esi, eax
cmp eax, 0xf
mov dword [ebp - 0x28], edi
ja 0x1007d10a
mov dword [ebp - 0xe0], esi
mov dword [ebp - 0xdc], 0xf
lea eax, [ebp - 0xf0]
push esi
push dword [ebp + 8]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, ebp
add esi, 0xffffff10
jmp 0x1007d16b
mov eax, esi
or eax, 0xf
cmp eax, 0x17
mov ebx, 0x16
cmovae ebx, eax
cmp ebx, 0xfff
jb 0x1007d139
lea eax, [ebx + 0x24]
push eax
call fcn.1015791b
add esp, 4
lea edi, [eax + 0x23]
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x1007d147
lea eax, [ebx + 1]
push eax
call fcn.1015791b
add esp, 4
mov edi, eax
mov dword [ebp - 0xf0], edi
mov dword [ebp - 0xe0], esi
mov dword [ebp - 0xdc], ebx
push esi
push dword [ebp + 8]
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, edi
mov edi, dword [ebp - 0x28]
mov byte [esi], 0
cmp dword [ebp - 0xe0], 0
je 0x1007da1c
mov eax, dword [ebp - 0xdc]
cmp eax, 0x10
jb 0x1007d1a1
mov ecx, dword [ebp - 0xf0]
cmp byte [ecx], 0x23
jne 0x1007d1ac
xor ebx, ebx
cmp eax, 0x10
jae 0x1007d2fb
jmp 0x1007d32e
lea ecx, [ebp - 0xf0]
cmp byte [ecx], 0x23
je 0x1007d191
xorps xmm0, xmm0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
push dword [ebp + 8]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
test eax, eax
js 0x1007da28
mov ebx, eax
cmp eax, 0xf
ja 0x1007d1ff
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
push ebx
push dword [ebp + 8]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, ebp
add ebx, 0xffffffc0
jmp 0x1007d29b
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x24], ebx
or ebx, 0xf
cmp ebx, 0x17
mov ecx, 0x16
cmovae ecx, ebx
cmp ecx, 0xfff
mov dword [ebp - 0x44], ecx
jb 0x1007d265
lea eax, [ecx + 0x24]
mov dword [ebp - 0x10], 0
push eax
call fcn.1015791b
add esp, 4
mov esi, eax
add esi, 0x23
and esi, 0xffffffe0
mov dword [esi - 4], eax
jmp 0x1007d27a
mov eax, dword [ebp - 0x20]
cmp dword [edi + 0x1b08], eax
jne 0x1007d0a2
mov eax, dword [ebp - 0x20]
cmp dword [edi + 0x2c40], eax
jne 0x1007d078
jmp 0x1007d0a2
lea eax, [ecx + 1]
mov dword [ebp - 0x10], 0
push eax
call fcn.1015791b
add esp, 4
mov esi, eax
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x30], ebx
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x2c], eax
push ebx
push dword [ebp + 8]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add ebx, esi
mov byte [ebx], 0
cmp dword [ebp - 0x30], 1
jbe 0x1007da34
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0x10
lea edx, [ebp - 0x40]
cmovae edx, eax
cmp byte [edx + 1], 0x23
setne bl
cmp ecx, 0x10
jb 0x1007d2f0
lea esi, [ecx + 1]
cmp esi, 0x1000
jb 0x1007d2e6
mov edx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, edx
cmp eax, 0x20
jae 0x1007da40
add ecx, 0x24
mov esi, ecx
mov eax, edx
push esi
push eax
call fcn.10157950
add esp, 8
mov eax, dword [ebp - 0xdc]
cmp eax, 0x10
jb 0x1007d32e
mov ecx, dword [ebp - 0xf0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x1007d324
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x1007da40
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.10157950
add esp, 8
mov dword [ebp - 0x10], 0xffffffff
test bl, bl
mov ebx, dword [ebp - 0x88]
je 0x1007d392
mov esi, dword [ebx + 0x274]
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0ae0]
movsd qword [ebp - 0xf0], xmm1
mov dword [ebp - 0xe8], 0x3f34b4b5
movss dword [ebp - 0xe4], xmm0
lea eax, [ebp - 0xf0]
push eax
call fcn.10048e20
add esp, 4
mov ecx, esi
push 0
push dword [ebp + 8]
push eax
lea eax, [ebp - 0xa8]
push eax
call fcn.10062eb0
movss xmm0, dword [0x101a984c]
movss xmm1, dword [ebp - 0xac]
addss xmm1, xmm0
xorps xmm2, xmm2
cmpltss xmm2, dword [ebp - 0xb0]
andps xmm1, xmm2
andnps xmm2, xmm0
orps xmm2, xmm1
movsd xmm0, qword [ebp - 0xa8]
xorps xmm1, xmm1
unpcklps xmm1, xmm2
addps xmm1, xmm0
movlps qword [ebp - 0x40], xmm1
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x38], eax
push 0
call fcn.1004c590
add esp, 4
mov esi, dword [ebx + 0x274]
test al, al
je 0x1007d4c3
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0b50]
movsd qword [ebp - 0xf0], xmm1
mov dword [ebp - 0xe8], 0x3e38b8b9
movss dword [ebp - 0xe4], xmm0
lea eax, [ebp - 0xf0]
push eax
call fcn.10048e20
add esp, 4
mov dword [ebp - 0x24], eax
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0b50]
movsd qword [ebp - 0x98], xmm1
mov dword [ebp - 0x90], 0x3e38b8b9
movss dword [ebp - 0x8c], xmm0
lea eax, [ebp - 0x98]
push eax
call fcn.10048e20
add esp, 4
mov ebx, eax
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0b60]
movsd qword [ebp - 0x58], xmm1
mov dword [ebp - 0x50], 0x3e9e9e9f
movss dword [ebp - 0x4c], xmm0
lea eax, [ebp - 0x58]
push eax
call fcn.10048e20
add esp, 4
mov ecx, edi
mov edi, eax
movss xmm0, dword [ecx + 0x1500]
movsd xmm1, qword [0x101b0b60]
movsd qword [ebp - 0x68], xmm1
mov dword [ebp - 0x60], 0x3e9e9e9f
jmp 0x1007d587
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0ab0]
movsd qword [ebp - 0xf0], xmm1
mov dword [ebp - 0xe8], 0x3e109091
movss dword [ebp - 0xe4], xmm0
lea eax, [ebp - 0xf0]
push eax
call fcn.10048e20
add esp, 4
mov dword [ebp - 0x24], eax
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0ab0]
movsd qword [ebp - 0x98], xmm1
mov dword [ebp - 0x90], 0x3e109091
movss dword [ebp - 0x8c], xmm0
lea eax, [ebp - 0x98]
push eax
call fcn.10048e20
add esp, 4
mov ebx, eax
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0b40]
movsd qword [ebp - 0x58], xmm1
mov dword [ebp - 0x50], 0x3e8a8a8b
movss dword [ebp - 0x4c], xmm0
lea eax, [ebp - 0x58]
push eax
call fcn.10048e20
add esp, 4
mov ecx, edi
mov edi, eax
movss xmm0, dword [ecx + 0x1500]
movsd xmm1, qword [0x101b0b40]
movsd qword [ebp - 0x68], xmm1
mov dword [ebp - 0x60], 0x3e8a8a8b
movss dword [ebp - 0x5c], xmm0
lea eax, [ebp - 0x68]
push eax
call fcn.10048e20
add esp, 4
lea edx, [ebp - 0x40]
mov ecx, esi
push dword [ebp - 0x24]
push ebx
push edi
push eax
lea eax, [ebp - 0x38]
push eax
push edx
call fcn.10062070
mov dword [ebp - 0x48], 0
movaps xmm0, xmmword [0x101a9870]
movups xmmword [ebp - 0x98], xmm0
sub esp, 0x2c
lea eax, [ebp - 0x48]
mov dword [esp + 0x28], eax
lea eax, [ebp - 0x98]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0xa8]
mov dword [esp], eax
movss xmm0, dword [ebp + 0x20]
movss dword [esp + 0x1c], xmm0
mov eax, dword [ebp - 0x78]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
mov esi, dword [ebp - 0x20]
mov dword [esp + 4], esi
mov dword [esp + 0x20], 0
call fcn.10079260
add esp, 0x2c
mov ebx, eax
test al, al
je 0x1007d633
push esi
call fcn.1004bd90
add esp, 4
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 0x274]
mov dword [ebp - 0x20], eax
mov edi, dword [ebp - 0x28]
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0b30]
movsd qword [ebp - 0xf0], xmm1
mov dword [ebp - 0xe8], 0x3df0f0f1
movss dword [ebp - 0xe4], xmm0
lea eax, [ebp - 0xf0]
push eax
call fcn.10048e20
add esp, 4
mov dword [ebp - 0x24], eax
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0b30]
movsd qword [ebp - 0x58], xmm1
mov dword [ebp - 0x50], 0x3df0f0f1
movss dword [ebp - 0x4c], xmm0
lea eax, [ebp - 0x58]
push eax
call fcn.10048e20
add esp, 4
mov dword [ebp - 0x44], eax
movsd xmm0, qword [0x101fe450]
movups xmm1, xmmword [0x101fe44c]
movlhps xmm1, xmm0
movss xmm2, dword [edi + 0x1500]
shufps xmm2, xmm0, 0xd4
shufps xmm1, xmm2, 0x28
movups xmmword [ebp - 0x68], xmm1
lea eax, [ebp - 0x68]
push eax
call fcn.10048e20
add esp, 4
mov dword [ebp - 0xfc], eax
movsd xmm0, qword [0x101fe450]
movups xmm1, xmmword [0x101fe44c]
movlhps xmm1, xmm0
movss xmm2, dword [edi + 0x1500]
shufps xmm2, xmm0, 0xd4
shufps xmm1, xmm2, 0x28
movups xmmword [ebp - 0x11c], xmm1
lea eax, [ebp - 0x11c]
push eax
call fcn.10048e20
add esp, 4
mov esi, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [ebp - 0x48]
movss xmm1, dword [ebp - 0x34]
movss dword [ebp - 0xf8], xmm1
divss xmm0, dword [0x101a99a8]
movss xmm2, dword [ebp - 0x40]
movss dword [ebp - 0xf4], xmm2
movss xmm1, dword [ebp - 0x38]
subss xmm1, xmm2
mulss xmm1, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
sub esp, 8
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
add esp, 8
fstp dword [ebp - 0x104]
movss xmm0, dword [ebp - 0xf4]
addss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0x108], xmm0
lea eax, [ebp - 0x10c]
lea edx, [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
push dword [ebp - 0x24]
push dword [ebp - 0x44]
push dword [ebp - 0xfc]
push esi
push eax
push edx
call fcn.10062070
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 0x274]
movss xmm0, dword [edi + 0x1500]
movsd xmm1, qword [0x101b0df0]
movsd qword [ebp - 0xf0], xmm1
mov dword [ebp - 0xe8], 0x3c40c0c1
movss dword [ebp - 0xe4], xmm0
lea eax, [ebp - 0xf0]
mov edi, eax
push eax
call fcn.10048e20
add esp, 4
mov ecx, esi
push 0x3f800000
push 0xf
push 0
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.10061e50
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x1007d843
cmp ecx, 1
jne 0x1007d879
mov eax, dword [ebp + 0x10]
push dword [eax]
push dword [ebp - 0x78]
push 0x40
push edi
call fcn.100486b0
add esp, 0x10
jmp 0x1007d8d6
mov esi, dword [ebp + 0x10]
mov eax, dword [esi]
sub eax, dword [ebp + 0x24]
mov dword [esi], eax
push eax
push dword [ebp - 0x78]
push 0x40
push edi
call fcn.100486b0
add esp, 0x10
push 0xbf800000
push 0
push 0
push edi
lea eax, [ebp - 0x68]
push eax
call fcn.10049fb0
add esp, 0x14
mov eax, dword [ebp + 0x24]
add dword [esi], eax
jmp 0x1007d8ec
mov eax, ecx
and eax, 0xfffffffe
cmp eax, 2
mov eax, dword [ebp - 0x78]
jne 0x1007d894
mov ecx, dword [ebp + 0x10]
push dword [ecx + 4]
push dword [ecx]
push eax
push 0x40
push edi
jmp 0x1007d8ce
cmp ecx, 5
je 0x1007d8af
cmp ecx, 4
jne 0x1007da0f
mov ecx, dword [ebp + 0x10]
movss xmm0, dword [ecx]
cvtss2sd xmm0, xmm0
jmp 0x1007d8b6
mov ecx, dword [ebp + 0x10]
movsd xmm0, qword [ecx]
sub esp, 0x14
movsd qword [esp + 0xc], xmm0
mov dword [esp + 8], eax
mov dword [esp], edi
mov dword [esp + 4], 0x40
call fcn.100486b0
add esp, 0x14
push 0xbf800000
push 0
push 0
push edi
lea eax, [ebp - 0x68]
push eax
call fcn.10049fb0
add esp, 0x14
call fcn.1004d690
mov eax, dword [eax + 0x8c]
cmp dword [eax + 0x34], 1
jle 0x1007da0f
mov eax, dword [eax + 0x3c]
push dword [eax + 4]
call fcn.1005a990
add esp, 4
mov eax, dword [ebp - 0x88]
mov esi, dword [eax + 0x274]
mov eax, dword [ebp - 0x28]
movss xmm0, dword [eax + 0x1500]
movsd xmm1, qword [0x101b0ae0]
movsd qword [ebp - 0x58], xmm1
mov dword [ebp - 0x50], 0x3f34b4b5
movss dword [ebp - 0x4c], xmm0
lea eax, [ebp - 0x58]
push eax
call fcn.10048e20
add esp, 4
movss xmm1, dword [ebp - 0x34]
movss xmm0, dword [ebp - 0x64]
mulss xmm0, dword [0x101a82c0]
subss xmm1, xmm0
addss xmm1, dword [0x101a97b0]
movss dword [ebp - 0x20], xmm1
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [ebp - 0x48]
mov edi, eax
divss xmm0, dword [0x101a99a8]
movss xmm2, dword [ebp - 0x40]
movss dword [ebp - 0x88], xmm2
movss xmm1, dword [ebp - 0x38]
subss xmm1, xmm2
mulss xmm1, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
sub esp, 8
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
add esp, 8
fstp dword [ebp - 0x100]
movss xmm1, dword [ebp - 0x88]
addss xmm1, dword [ebp - 0x100]
movss xmm0, dword [0x101a82c0]
mulss xmm0, dword [ebp - 0x68]
subss xmm1, xmm0
movss dword [ebp - 0x11c], xmm1
movss xmm0, dword [ebp - 0x20]
movss dword [ebp - 0x118], xmm0
mov ecx, esi
push 0
lea eax, [ebp - 0xf0]
push eax
push edi
lea eax, [ebp - 0x11c]
push eax
call fcn.10062eb0
call fcn.1005ab30
jmp 0x1007cfed
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
call fcn.1001aab0
mov dword [ebp - 0x10], 0
call fcn.10033a60
mov dword [ebp - 0x10], 0
call fcn.1001aab0
mov dword [ebp - 0x10], 1
call fcn.10033a60
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop word cs:[eax + eax]
push ebp
sub esp, 0x2c
add ebp, 0xc
lea ecx, [ebp - 0x40]
call fcn.10015110
add esp, 0x2c
pop ebp
ret