Function at 0x1013d0a0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc8
push ebx
push esi
push edi
mov edi, dword [0x101e6b78]
mov esi, edx
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x3c], edi
mov eax, dword [edi + 0x19e4]
mov byte [eax + 0x7c], 1
mov eax, dword [edi + 0x19e4]
mov dword [ebp - 0x48], eax
cmp byte [eax + 0x7f], 0
je 0x1013d0df
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movss xmm0, dword [edi + 0x153c]
mov ebx, dword [ebp + 8]
addss xmm0, xmm0
addss xmm0, dword [edi + 0x1900]
movss dword [ebp - 0x68], xmm0
test bl, 0x10
je 0x1013d10a
xorps xmm0, xmm0
movss dword [ebp - 0x24], xmm0
jmp 0x1013d11a
addss xmm0, dword [edi + 0x1550]
movss dword [ebp - 0x24], xmm0
xorps xmm0, xmm0
movss xmm1, dword [eax + 0x16c]
comiss xmm0, xmm1
movss dword [ebp - 0x10], xmm1
jbe 0x1013d14c
lea ecx, [ebp - 0x70]
call fcn.10111440
movss xmm0, dword [ebp - 0x10]
movss xmm1, dword [0x1017f0d8]
mov ecx, dword [ebp - 0x34]
addss xmm0, dword [eax]
maxss xmm1, xmm0
mov dword [ebp - 0x44], ecx
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm0, dword [ebp - 0x24]
movss dword [ebp - 0x10], xmm0
cmp ecx, 0xffffffff
jae 0x1013d18c
mov esi, ecx
nop dword [eax + eax]
mov cl, byte [esi]
test cl, cl
je 0x1013d189
cmp cl, 0x23
jne 0x1013d180
cmp byte [esi + 1], cl
je 0x1013d189
inc esi
mov dword [ebp - 0x44], esi
cmp esi, 0xffffffff
jb 0x1013d170
mov esi, dword [ebp - 0x28]
call fcn.10111090
mov ecx, dword [ebp - 0x34]
call fcn.10111280
mov dword [ebp - 0x6c], ebx
test bl, 0x20
je 0x1013d1ad
and ebx, 0xff9fffff
or ebx, 0x100008
test bl, 8
jne 0x1013d1bb
mov edx, ebx
mov ecx, esi
call fcn.10130180
test ebx, 0x700000
jne 0x1013d1d0
mov eax, dword [edi + 0x2c48]
and eax, 0x700000
or ebx, eax
test ebx, 0x1800000
jne 0x1013d1e5
mov eax, dword [edi + 0x2c48]
and eax, 0x1800000
or ebx, eax
test ebx, 0x6000000
jne 0x1013d1fa
mov eax, dword [edi + 0x2c48]
and eax, 0x6000000
or ebx, eax
test ebx, 0x18000000
jne 0x1013d20f
mov eax, dword [edi + 0x2c48]
and eax, 0x18000000
or ebx, eax
mov eax, dword [edi + 0x2c48]
and eax, 0xe00fffff
or ebx, eax
mov ecx, ebx
and ecx, 0x700000
je 0x1013db32
lea eax, [ecx - 1]
test ecx, eax
jne 0x1013db32
mov ecx, ebx
and ecx, 0x18000000
je 0x1013db32
lea eax, [ecx - 1]
test ecx, eax
jne 0x1013db32
movss xmm0, dword [esi]
mov ecx, ebx
shr ecx, 1
mov eax, ebx
shr eax, 0x13
not cl
and eax, 0xffffff01
movss dword [ebp - 0x20], xmm0
movss xmm0, dword [esi + 4]
and ecx, 0xffffff01
mov dword [ebp - 0x5c], eax
movzx eax, cl
add eax, 3
movss dword [ebp - 0x1c], xmm0
movss xmm0, dword [esi + 8]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x38], eax
movss dword [ebp - 0x18], xmm0
test cl, cl
je 0x1013d2a0
movss xmm0, dword [esi + 0xc]
movss dword [ebp - 0x14], xmm0
jmp 0x1013d2a7
mov dword [ebp - 0x14], 0x3f800000
mov eax, ebx
and eax, 0x10100000
cmp eax, 0x10100000
jne 0x1013d2d5
movss xmm2, dword [ebp - 0x18]
lea eax, [ebp - 0x18]
movss xmm1, dword [ebp - 0x1c]
lea edx, [ebp - 0x1c]
movss xmm0, dword [ebp - 0x20]
lea ecx, [ebp - 0x20]
push eax
call fcn.1011b8b0
jmp 0x1013d301
mov eax, ebx
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x1013d304
movss xmm2, dword [ebp - 0x18]
lea eax, [ebp - 0x18]
movss xmm1, dword [ebp - 0x1c]
lea edx, [ebp - 0x1c]
movss xmm0, dword [ebp - 0x20]
lea ecx, [ebp - 0x20]
push eax
call fcn.1011ba00
add esp, 4
movss xmm0, dword [ebp - 0x20]
xorps xmm5, xmm5
comiss xmm0, xmm5
movss xmm2, dword [0x1017f350]
movss xmm1, dword [0x1017f094]
jb 0x1013d326
movaps xmm4, xmm1
jmp 0x1013d329
movaps xmm4, xmm2
movss xmm0, dword [ebp - 0x20]
movss xmm3, dword [0x1017f2b8]
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si edx, xmm0
movss xmm0, dword [ebp - 0x1c]
comiss xmm0, xmm5
mov dword [ebp - 0x58], edx
jb 0x1013d354
movaps xmm4, xmm1
jmp 0x1013d357
movaps xmm4, xmm2
movss xmm0, dword [ebp - 0x1c]
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si ecx, xmm0
movss xmm0, dword [ebp - 0x18]
comiss xmm0, xmm5
mov dword [ebp - 0x54], ecx
jb 0x1013d37a
movaps xmm4, xmm1
jmp 0x1013d37d
movaps xmm4, xmm2
movss xmm0, dword [ebp - 0x18]
mulss xmm0, xmm3
addss xmm0, xmm4
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x14]
comiss xmm0, xmm5
mov dword [ebp - 0x50], eax
jae 0x1013d39e
movaps xmm1, xmm2
movss xmm0, dword [ebp - 0x14]
mulss xmm0, xmm3
mov byte [ebp - 5], 0
mov byte [ebp - 6], 0
addss xmm0, xmm1
cvttss2si edi, xmm0
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x4c], edi
mov edi, dword [ebp - 0x3c]
test ebx, 0x300000
je 0x1013d63a
test bl, 0x20
jne 0x1013d63a
mov ecx, dword [ebp - 0x38]
movss xmm2, dword [edi + 0x1550]
movss xmm4, dword [ebp - 0x10]
movaps xmm0, xmm2
movaps xmm1, xmm4
lea eax, [ecx - 1]
movd xmm3, eax
cvtdq2ps xmm3, xmm3
mulss xmm0, xmm3
subss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov ecx, str.M:000
divss xmm1, xmm0
cvttss2si eax, xmm1
movss xmm1, dword [0x1017f0d8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
maxss xmm1, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x10], xmm1
movss xmm1, dword [0x1017f0d8]
mulss xmm2, xmm3
movss xmm3, dword [0x1017f334]
subss xmm4, xmm2
cvttss2si eax, xmm4
movd xmm0, eax
mov eax, ebx
and eax, 0x1000000
mov dword [ebp - 0x64], eax
mov eax, str.M:0.000
cmove eax, ecx
mov ecx, dword [0x101e6b78]
push ecx
cvtdq2ps xmm0, xmm0
push 0
push eax
lea eax, [ebp - 0x30]
push ecx
movss xmm2, dword [ecx + 0x1900]
mov ecx, dword [ecx + 0x18fc]
maxss xmm1, xmm0
mov dword [esp], 0xbf800000
push eax
movss dword [ebp - 0x60], xmm1
call fcn.10129fa0
movss xmm0, dword [ebp - 0x30]
addss xmm0, dword [0x1017f0d0]
movss xmm1, dword [ebp - 0x10]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jb 0x1013d4ba
xor edi, edi
jmp 0x1013d4c9
mov edi, ebx
and edi, 0x200000
neg edi
sbb edi, edi
neg edi
inc edi
movaps xmm0, xmm1
call fcn.10111e60
xor esi, esi
cmp dword [ebp - 0x38], esi
jbe 0x1013d625
mov eax, ebx
mov dword [ebp - 0xc], 0xff
and eax, 8
shl edi, 4
mov dword [ebp - 0x2c], eax
nop
test esi, esi
jle 0x1013d507
mov eax, dword [ebp - 0x3c]
xorps xmm0, xmm0
movss xmm1, dword [eax + 0x1550]
call fcn.1011d510
mov ecx, dword [ebp - 0x38]
lea eax, [esi + 1]
cmp eax, ecx
jne 0x1013d51b
movss xmm0, dword [ebp - 0x60]
call fcn.10111e60
cmp dword [ebp - 0x64], 0
je 0x1013d586
cmp byte [ebp - 0x5c], 0
je 0x1013d52c
xorps xmm0, xmm0
jmp 0x1013d534
movss xmm0, dword [0x1017f0d8]
movss xmm3, dword [0x1017f018]
lea eax, [ebp - 0x10]
push ecx
mov ecx, dword [esi*4 + 0x1017e630]
mov edx, 4
mov dword [esp], 0x3f800000
push dword [edi + 0x1017e600]
movss dword [ebp - 0x10], xmm0
push eax
lea eax, [ebp - 0x40]
mov dword [ebp - 0x40], 0
push eax
lea eax, [ebp - 0x20]
lea eax, [eax + esi*4]
push eax
call fcn.10138060
mov cl, byte [ebp - 5]
add esp, 0x14
or cl, al
or byte [ebp - 6], cl
mov byte [ebp - 5], cl
jmp 0x1013d5d0
mov eax, dword [ebp - 0xc]
xor ecx, ecx
cmp byte [ebp - 0x5c], cl
movss xmm3, dword [0x1017f0d8]
cmovne eax, ecx
mov dword [ebp - 0x10], ecx
push ecx
mov ecx, dword [esi*4 + 0x1017e630]
xor edx, edx
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x40]
mov dword [esp], 0x3f800000
push dword [edi + 0x1017e5a0]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x58]
lea eax, [eax + esi*4]
push eax
call fcn.10138060
add esp, 0x14
or byte [ebp - 5], al
cmp dword [ebp - 0x2c], 0
jne 0x1013d618
mov eax, dword [0x101e6b78]
cmp byte [eax + 0x3db], 0
mov ecx, dword [eax + 0x19e4]
mov dword [ebp - 0x40], ecx
je 0x1013d618
mov ecx, 8
call fcn.10119820
test al, al
je 0x1013d618
push ecx
mov ecx, dword [ebp - 0x40]
push str.context
call fcn.1011d2f0
test eax, eax
je 0x1013db32
mov ecx, eax
call fcn.10110970
inc esi
add edi, 4
cmp esi, dword [ebp - 0x38]
jl 0x1013d4f0
call fcn.10111e00
call fcn.10111e00
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x3c]
jmp 0x1013d7d4
test ebx, 0x400000
je 0x1013d7d4
test bl, 0x20
jne 0x1013d7d4
cmp byte [ebp - 0x24], 0
mov dword [ebp - 0xc], 0xff
je 0x1013d6c5
mov esi, dword [ebp - 0x2c]
test esi, esi
jns 0x1013d667
xor esi, esi
jmp 0x1013d671
cmp esi, 0xff
cmovg esi, dword [ebp - 0xc]
test eax, eax
jns 0x1013d679
xor eax, eax
jmp 0x1013d682
cmp eax, 0xff
cmovg eax, dword [ebp - 0xc]
test ecx, ecx
jns 0x1013d68a
xor ecx, ecx
jmp 0x1013d694
cmp ecx, 0xff
cmovg ecx, dword [ebp - 0xc]
test edx, edx
jns 0x1013d69c
xor edx, edx
jmp 0x1013d6a6
cmp edx, 0xff
cmovg edx, dword [ebp - 0xc]
push esi
push eax
push ecx
push edx
push str._02X_02X_02X_02X
lea eax, [ebp - 0xc4]
push 0x40
push eax
call fcn.1011c600
mov esi, dword [ebp - 0x28]
add esp, 0x1c
jmp 0x1013d713
test eax, eax
jns 0x1013d6cd
xor eax, eax
jmp 0x1013d6d6
cmp eax, 0xff
cmovg eax, dword [ebp - 0xc]
test ecx, ecx
jns 0x1013d6de
xor ecx, ecx
jmp 0x1013d6e8
cmp ecx, 0xff
cmovg ecx, dword [ebp - 0xc]
test edx, edx
jns 0x1013d6f0
xor edx, edx
jmp 0x1013d6fa
cmp edx, 0xff
cmovg edx, dword [ebp - 0xc]
push eax
push ecx
push edx
push str._02X_02X_02X
lea eax, [ebp - 0xc4]
push 0x40
push eax
call fcn.1011c600
add esp, 0x18
movss xmm0, dword [ebp - 0x10]
call fcn.10111e60
push 0
push 0
push 6
lea eax, [ebp - 0x30]
mov dword [ebp - 0x30], 0
push eax
push 0x40
lea edx, [ebp - 0xc4]
mov dword [ebp - 0x2c], 0
mov ecx, str.Text
call fcn.101310e0
add esp, 0x14
test al, al
je 0x1013d7c5
mov byte [ebp - 5], 1
lea ecx, [ebp - 0xc4]
mov al, byte [ecx]
cmp al, 0x23
je 0x1013d766
cmp al, 0x20
je 0x1013d766
cmp al, 9
jne 0x1013d769
inc ecx
jmp 0x1013d758
cmp byte [ebp - 0x24], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x58], 0
je 0x1013d7ab
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x58]
push eax
push 0x1017e428
push ecx
call fcn.1003a8f0
add esp, 0x18
jmp 0x1013d7c5
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x58]
push eax
push 0x1017e418
push ecx
call fcn.1003a8f0
add esp, 0x14
test bl, 8
jne 0x1013d7cf
call fcn.10110920
call fcn.10111e00
xor eax, eax
mov dword [ebp - 0x28], eax
test bl, 0x10
jne 0x1013d940
test bl, 0x20
jne 0x1013d7f7
movss xmm1, dword [edi + 0x1550]
xorps xmm0, xmm0
call fcn.1011d510
cmp byte [ebp - 0x24], 0
je 0x1013d804
movss xmm1, dword [esi + 0xc]
jmp 0x1013d80c
movss xmm1, dword [0x1017f0d8]
movss xmm0, dword [esi]
lea edx, [ebp - 0x80]
movss dword [ebp - 0x80], xmm0
movss xmm0, dword [esi + 4]
mov dword [ebp - 0x2c], 0
push dword [ebp - 0x2c]
mov dword [ebp - 0x30], 0
push dword [ebp - 0x30]
movss dword [ebp - 0x7c], xmm0
movss xmm0, dword [esi + 8]
push ebx
movss dword [ebp - 0x78], xmm0
movss dword [ebp - 0x74], xmm1
call fcn.10139ae0
add esp, 0xc
test al, al
je 0x1013d8c2
test bl, 4
jne 0x1013d8c2
movups xmm0, xmmword [ebp - 0x80]
mov ecx, str.picker
movups xmmword [edi + 0x2c4c], xmm0
call fcn.10110b10
mov eax, dword [ebp - 0x48]
movss xmm1, dword [eax + 0x114]
movss xmm0, dword [eax + 0x120]
addss xmm0, dword [edi + 0x154c]
mov eax, dword [0x101e6b78]
subss xmm1, dword [0x1017f0d8]
movss dword [eax + 0x1aac], xmm0
mov dword [eax + 0x1ab0], 0
movss dword [eax + 0x1aa8], xmm1
mov dword [eax + 0x1ab4], 0
mov dword [eax + 0x1a8c], 1
test bl, 8
jne 0x1013d8cc
call fcn.10110920
mov ecx, str.picker
call fcn.101105a0
test al, al
je 0x1013d940
mov eax, dword [edi + 0x19e4]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x44]
cmp ecx, eax
je 0x1013d8fd
push ecx
mov edx, eax
call fcn.10130b20
add esp, 4
call fcn.10138020
movss xmm0, dword [ebp - 0x68]
mulss xmm0, dword [0x1017f1ac]
call fcn.10111e60
lea eax, [edi + 0x2c4c]
mov edx, esi
push eax
mov eax, dword [ebp - 0x6c]
mov ecx, 0x1017deec
and eax, 0x1f890002
or eax, 0x240080
push eax
call fcn.10138730
or byte [ebp - 5], al
add esp, 8
call fcn.10111e00
call fcn.10110480
mov edi, dword [ebp - 0x44]
cmp dword [ebp - 0x34], edi
je 0x1013d96d
test bl, bl
js 0x1013d96d
mov eax, dword [ebp - 0x3c]
xorps xmm0, xmm0
movss xmm1, dword [eax + 0x1550]
call fcn.1011d510
push ecx
mov ecx, dword [ebp - 0x34]
mov edx, edi
call fcn.10130b20
add esp, 4
cmp byte [ebp - 5], 0
mov edi, dword [ebp - 0x28]
je 0x1013da25
test edi, edi
jne 0x1013da25
cmp byte [ebp - 6], 0
jne 0x1013d99a
movups xmm0, xmmword [ebp - 0x58]
cvtdq2ps xmm0, xmm0
divps xmm0, xmmword [0x1017f950]
movups xmmword [ebp - 0x20], xmm0
mov eax, ebx
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x1013d9c9
movss xmm2, dword [ebp - 0x18]
lea eax, [ebp - 0x18]
movss xmm1, dword [ebp - 0x1c]
lea edx, [ebp - 0x1c]
movss xmm0, dword [ebp - 0x20]
lea ecx, [ebp - 0x20]
push eax
call fcn.1011b8b0
add esp, 4
mov eax, ebx
and eax, 0x10100000
cmp eax, 0x10100000
jne 0x1013d9f8
movss xmm2, dword [ebp - 0x18]
lea eax, [ebp - 0x18]
movss xmm1, dword [ebp - 0x1c]
lea edx, [ebp - 0x1c]
movss xmm0, dword [ebp - 0x20]
lea ecx, [ebp - 0x20]
push eax
call fcn.1011ba00
add esp, 4
cmp byte [ebp - 0x24], 0
movss xmm0, dword [ebp - 0x20]
movss dword [esi], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [esi + 4], xmm0
movss xmm0, dword [ebp - 0x18]
movss dword [esi + 8], xmm0
je 0x1013da25
movss xmm0, dword [ebp - 0x14]
movss dword [esi + 0xc], xmm0
mov eax, dword [0x101e6b78]
mov ecx, dword [eax + 0x19e4]
mov eax, dword [ecx + 0x1c0]
test eax, eax
jle 0x1013db32
dec eax
mov dword [ecx + 0x1c0], eax
call fcn.10110e80
mov ecx, dword [ebp - 0x48]
test byte [ecx + 0x110], 1
je 0x1013daf8
test ebx, 0x200
jne 0x1013daf8
call fcn.1010c170
test al, al
je 0x1013daf5
mov ecx, str._COL3F
mov byte [ebp - 6], 0
call fcn.1010bef0
test eax, eax
je 0x1013da9d
mov eax, dword [eax]
mov byte [ebp - 6], 1
mov byte [ebp - 5], 1
movq xmm0, qword [eax]
movq qword [esi], xmm0
mov eax, dword [eax + 8]
mov dword [esi + 8], eax
mov ecx, str._COL4F
call fcn.1010bef0
test eax, eax
je 0x1013dac3
mov ecx, dword [ebp - 0x38]
shl ecx, 2
push ecx
push dword [eax]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [ebp - 5], 1
jmp 0x1013dac9
cmp byte [ebp - 6], 0
je 0x1013daf0
test ebx, 0x10000000
je 0x1013daf0
movss xmm2, dword [esi + 8]
lea eax, [esi + 8]
movss xmm1, dword [esi + 4]
lea edx, [esi + 4]
movss xmm0, dword [esi]
mov ecx, esi
push eax
call fcn.1011ba00
add esp, 4
call fcn.1010bec0
mov ecx, dword [ebp - 0x48]
test edi, edi
je 0x1013db17
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + 0x1a04]
test edx, edx
je 0x1013db17
cmp dword [eax + 0x1a2c], edi
jne 0x1013db17
mov dword [ecx + 0x10c], edx
mov bl, byte [ebp - 5]
test bl, bl
je 0x1013db29
mov ecx, dword [ecx + 0x10c]
call fcn.10119a60
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3