Function at 0x10082c00
Capabilities:
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xc4
mov eax, dword [0x10258d1c]
xor eax, esp
mov dword [esp + 0xc0], eax
mov esi, dword [0x10258f60]
mov eax, dword [esi + 0x19e4]
mov byte [eax + 0x7c], 1
mov ebp, dword [esi + 0x19e4]
cmp byte [ebp + 0x7f], 0
je 0x10082c3b
xor ebx, ebx
jmp 0x100838f7
mov ebx, dword [esp + 0xe0]
call fcn.1005adf0
fstp dword [esp + 0x4c]
movss xmm0, dword [esp + 0x4c]
xorps xmm1, xmm1
test bl, 0x10
jne 0x10082c65
movss xmm1, dword [esi + 0x1550]
addss xmm1, xmm0
movss dword [esp + 4], xmm1
movss dword [esp + 0x40], xmm0
mov edi, dword [esp + 0xdc]
call fcn.1005a800
fstp dword [esp + 0x48]
movss xmm0, dword [esp + 0x48]
movups xmmword [esp + 0x28], xmm0
push 0
mov ebx, dword [esp + 0xdc]
push ebx
call fcn.100496b0
add esp, 8
mov dword [esp + 0xc], eax
call fcn.1005b1e0
push ebx
call fcn.1005af70
add esp, 4
mov eax, dword [esp + 0xe0]
mov ebx, eax
and ebx, 0xff8ffff7
or ebx, 0x100008
test al, 0x20
cmove ebx, eax
test bl, 8
je 0x10082d93
test ebx, 0x700000
je 0x10082da9
test ebx, 0x1800000
je 0x10082dc2
test ebx, 0x6000000
mov dword [esp + 8], ebp
jne 0x10082d04
mov eax, 0x6000000
and eax, dword [esi + 0x2c44]
or ebx, eax
mov edx, dword [esi + 0x2c44]
mov eax, edx
and eax, 0x18000000
xor ebp, ebp
test ebx, 0x18000000
cmove ebp, eax
mov eax, ebx
and eax, 0x700000
lea ecx, [eax - 1]
test eax, ecx
sete cl
test eax, eax
setne al
test al, cl
je 0x10083912
or ebp, ebx
mov eax, ebp
and eax, 0x18000000
lea ecx, [eax - 1]
test eax, ecx
sete cl
test eax, eax
setne al
test al, cl
je 0x10083912
and edx, 0xe00fffff
or edx, ebp
test dl, 2
sete al
movsd xmm0, qword [edi]
movsd qword [esp + 0xb0], xmm0
movss xmm1, dword [edi + 8]
movss dword [esp + 0xb8], xmm1
test dl, 2
mov dword [esp + 0x24], ebx
mov dword [esp + 0x14], ebp
jne 0x10082dd4
movss xmm2, dword [edi + 0xc]
jmp 0x10082ddc
push ebx
push edi
call fcn.10083920
add esp, 8
test ebx, 0x700000
jne 0x10082cdf
mov eax, 0x700000
and eax, dword [esi + 0x2c44]
or ebx, eax
test ebx, 0x1800000
jne 0x10082ceb
mov eax, 0x1800000
and eax, dword [esi + 0x2c44]
or ebx, eax
jmp 0x10082ceb
movss xmm2, dword [0x101a6280]
xor ecx, ecx
mov cl, al
mov edi, ecx
lea eax, [esp + 0xb4]
lea ecx, [esp + 0xb8]
movss dword [esp + 0xbc], xmm2
mov ebp, dword [esp + 0x14]
mov ebx, ebp
and ebx, 0x10100000
mov dword [esp + 0x44], ebx
cmp ebx, 0x10100000
mov dword [esp], edx
jne 0x10082e5f
movaps xmm2, xmm0
shufps xmm2, xmm0, 0x55
sub esp, 0x18
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0xc], eax
movss dword [esp + 8], xmm1
movss dword [esp], xmm0
movss dword [esp + 4], xmm2
call fcn.10048ec0
lea ecx, [esp + 0xd0]
mov edx, dword [esp + 0x18]
add esp, 0x18
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 8]
jmp 0x10082eba
mov eax, ebp
not eax
test eax, 0x8200000
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 8]
jne 0x10082eba
movaps xmm2, xmm0
shufps xmm2, xmm0, 0x55
sub esp, 0x18
mov dword [esp + 0x14], ecx
lea eax, [esp + 0xcc]
mov dword [esp + 0x10], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0xc], eax
movss dword [esp + 8], xmm1
movss dword [esp], xmm0
movss dword [esp + 4], xmm2
call fcn.10048e00
lea ecx, [esp + 0xd0]
mov edx, dword [esp + 0x18]
add esp, 0x18
movups xmm3, xmmword [esp + 0x28]
subss xmm3, dword [esp + 4]
add edi, 3
mov dword [esp + 0x38], edi
movups xmm0, xmmword [esp + 0xb0]
xorps xmm1, xmm1
cmpleps xmm1, xmm0
movaps xmm2, xmm1
andnps xmm2, xmmword [0x101aee40]
andps xmm1, xmmword [0x101ae0d0]
orps xmm1, xmm2
mulps xmm0, xmmword [0x101aee50]
addps xmm0, xmm1
cvttps2dq xmm0, xmm0
movdqu xmmword [esp + 0xa0], xmm0
mov eax, edx
and eax, 0x20
test ebx, 0x300000
je 0x1008308b
test eax, eax
jne 0x1008308b
mov eax, esi
mov ecx, dword [esp + 0x38]
lea esi, [ecx - 1]
xorps xmm1, xmm1
cvtsi2ss xmm1, esi
mov dword [esp + 0x10], eax
movss xmm0, dword [eax + 0x1550]
movss dword [esp + 0x18], xmm0
movss dword [esp + 0x3c], xmm1
mulss xmm0, xmm1
movups xmmword [esp + 0x28], xmm3
movaps xmm1, xmm3
xorps xmm2, xmm2
cvtsi2ss xmm2, ecx
subss xmm1, xmm0
divss xmm1, xmm2
cvttps2dq xmm0, xmm1
cvtdq2ps xmm0, xmm0
movss xmm1, dword [0x101a6280]
maxss xmm1, xmm0
movss dword [esp + 4], xmm1
test ebx, 0x1000000
mov eax, str.M:000
mov ecx, str.M:0.000
cmove ecx, eax
lea eax, [esp + 0x60]
push 0xbf800000
push 0
push 0
push ecx
push eax
call fcn.10049ee0
add esp, 0x14
movss xmm0, dword [esp + 0x60]
mov eax, ebx
and eax, 0x200000
cmp eax, 1
mov ebp, 2
sbb ebp, 0
xor edi, edi
movss xmm1, dword [esp + 4]
ucomiss xmm0, xmm1
cmovae ebp, edi
sub esp, 4
movss dword [esp], xmm1
call fcn.10049370
add esp, 4
movss xmm0, dword [0x101a6280]
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x1c], xmm0
test dword [esp], 0x80000
je 0x10083001
xorps xmm0, xmm0
movss dword [esp + 0x1c], xmm0
mov eax, 0xff
cmove edi, eax
movss xmm1, dword [esp + 0x18]
addss xmm1, dword [esp + 4]
mulss xmm1, dword [esp + 0x3c]
movups xmm0, xmmword [esp + 0x28]
subss xmm0, xmm1
cvttps2dq xmm0, xmm0
movups xmmword [esp + 0x28], xmm0
mov eax, ebp
shl eax, 4
test ebx, 0x1000000
jne 0x10083139
mov eax, dword [eax + 0x101ae960]
mov dword [esp + 0x60], edi
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x58]
lea edx, [esp + 0xa0]
push 0x3f800000
push eax
lea eax, [esp + 0x68]
push eax
push ecx
push 0x3f800000
push edx
push 0
push 0x101ee357
call fcn.10078960
add esp, 0x20
mov ebx, eax
mov dword [esp + 4], 0
jmp 0x10083185
mov dword [esp + 4], 0
test ebx, 0x400000
je 0x1008331b
mov ebx, 0
test eax, eax
jne 0x1008347b
movups xmmword [esp + 0x28], xmm3
mov dword [esp + 0x10], esi
test dl, 2
jne 0x10083322
pshufd xmm1, xmm0, 0xff
movd ecx, xmm1
cmp ecx, 0xff
mov eax, 0xff
cmovge ecx, eax
xor edx, edx
test ecx, ecx
cmovle ecx, edx
pshufd xmm1, xmm0, 0xee
movd esi, xmm1
cmp esi, 0xff
cmovge esi, eax
test esi, esi
cmovle esi, edx
pshufd xmm1, xmm0, 0x55
movd edi, xmm1
cmp edi, 0xff
cmovge edi, eax
test edi, edi
cmovle edi, edx
movd ebx, xmm0
cmp ebx, 0xff
cmovl eax, ebx
test eax, eax
cmovle eax, edx
lea edx, [esp + 0x60]
push ecx
push esi
push edi
push eax
push str._02X_02X_02X_02X
push 0x40
push edx
call fcn.100485e0
add esp, 0x1c
jmp 0x10083380
mov eax, dword [eax + 0x101ae990]
movss xmm0, dword [esp + 0x1c]
movss dword [esp + 0x60], xmm0
mov dword [esp + 0x58], 0
lea ecx, [esp + 0x58]
lea edx, [esp + 0xb0]
push 0x3f800000
push eax
lea eax, [esp + 0x68]
push eax
push ecx
push 0x3b808081
push edx
push 4
push 0x101ee357
call fcn.10078960
add esp, 0x20
mov dword [esp + 4], eax
mov ebx, eax
mov dword [esp + 0x18], edi
movups xmm0, xmmword [esp + 0x28]
cvtdq2ps xmm1, xmm0
test byte [esp], 8
jne 0x100831b0
push 1
push str.context
movups xmmword [esp + 0x30], xmm1
call fcn.1005be80
movups xmm1, xmmword [esp + 0x30]
add esp, 8
movss xmm0, dword [esp + 0x20]
maxss xmm0, xmm1
movss dword [esp + 0x20], xmm0
shl ebp, 4
xor edi, edi
jmp 0x100831da
add edi, 4
dec esi
je 0x10083304
mov eax, dword [esp + 0x10]
movss xmm0, dword [eax + 0x1550]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.1004bea0
add esp, 8
cmp esi, 1
jne 0x10083219
sub esp, 4
movss xmm0, dword [esp + 0x24]
movss dword [esp], xmm0
call fcn.10049370
add esp, 4
and bl, 1
mov eax, dword [edi + 0x101ae954]
mov dword [esp + 0x28], eax
test dword [esp + 0x24], 0x1000000
jne 0x10083290
mov ecx, dword [ebp + edi + 0x101ae964]
lea edx, [esp + 0xa4]
add edx, edi
mov eax, esi
mov esi, ebx
mov ebx, ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x60], ebp
mov ebp, ebx
mov ebx, esi
mov esi, eax
mov dword [esp + 0x58], 0
push 0x3f800000
push ecx
lea ecx, [esp + 0x68]
push ecx
lea eax, [esp + 0x64]
push eax
push 0x3f800000
push edx
push 0
push dword [esp + 0x44]
call fcn.10078960
add esp, 0x20
or bl, al
test byte [esp], 8
jne 0x100831d0
jmp 0x100832f0
mov ecx, dword [ebp + edi + 0x101ae994]
lea edx, [esp + 0xb4]
add edx, edi
movss xmm0, dword [esp + 0x1c]
movss dword [esp + 0x60], xmm0
mov dword [esp + 0x58], 0
push 0x3f800000
push ecx
lea ecx, [esp + 0x68]
push ecx
lea eax, [esp + 0x64]
push eax
push 0x3b808081
push edx
push 4
push dword [esp + 0x44]
call fcn.10078960
add esp, 0x20
or bl, al
mov eax, dword [esp + 4]
and al, 1
or al, bl
mov dword [esp + 4], eax
test byte [esp], 8
jne 0x100831d0
push 1
push str.context
call fcn.1005be80
add esp, 8
jmp 0x100831d0
call fcn.10049480
call fcn.10049480
mov ebp, dword [esp + 8]
mov esi, dword [esp + 0x10]
jmp 0x10083471
xor ebx, ebx
jmp 0x1008347b
pshufd xmm1, xmm0, 0xee
movd ecx, xmm1
cmp ecx, 0xff
mov eax, 0xff
cmovge ecx, eax
xor edx, edx
test ecx, ecx
cmovle ecx, edx
pshufd xmm1, xmm0, 0x55
movd esi, xmm1
cmp esi, 0xff
cmovge esi, eax
test esi, esi
cmovle esi, edx
movd edi, xmm0
cmp edi, 0xff
cmovl eax, edi
test eax, eax
cmovle eax, edx
lea edx, [esp + 0x60]
push ecx
push esi
push eax
push str._02X_02X_02X
push 0x40
push edx
call fcn.100485e0
add esp, 0x18
sub esp, 4
movups xmm0, xmmword [esp + 0x2c]
movss dword [esp], xmm0
call fcn.10049370
add esp, 4
xorps xmm0, xmm0
movlps qword [esp + 0x58], xmm0
lea eax, [esp + 0x58]
lea esi, [esp + 0x60]
push 0
push 0
push 6
push eax
push 0x40
push esi
push str.Text
call fcn.1007db90
add esp, 0x1c
test al, al
je 0x100833f3
lea eax, [esp + 0xa8]
lea ecx, [esp + 0xac]
mov edx, 0x4800001
nop word cs:[eax + eax]
movzx edi, byte [esi]
add edi, 0xfffffff7
cmp edi, 0x1a
ja 0x100833f7
bt edx, edi
jae 0x100833f7
inc esi
jmp 0x100833e0
xor ebx, ebx
jmp 0x1008344b
xorps xmm0, xmm0
movups xmmword [esp + 0xa0], xmm0
test byte [esp], 2
jne 0x1008342a
lea edx, [esp + 0xa0]
push ecx
push eax
lea eax, [esp + 0xac]
push eax
push edx
push 0x101ee330
push esi
call fcn.1005ef10
add esp, 0x18
jmp 0x10083449
lea ecx, [esp + 0xa0]
push eax
lea eax, [esp + 0xa8]
push eax
push ecx
push 0x101ee342
push esi
call fcn.1005ef10
add esp, 0x14
mov bl, 1
test byte [esp], 8
mov esi, dword [esp + 0x10]
jne 0x10083464
push 1
push str.context
call fcn.1005be80
add esp, 8
call fcn.10049480
mov dword [esp + 4], 0
mov edx, dword [esp]
lea ecx, [esp + 0xb8]
xor edi, edi
test dl, 0x10
jne 0x10083655
test dl, 0x20
jne 0x100834af
movd xmm0, dword [esi + 0x1550]
sub esp, 8
movd dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.1004bea0
mov edx, dword [esp + 8]
add esp, 8
test dl, 2
mov eax, dword [esp + 0xdc]
jne 0x100834c2
movss xmm0, dword [eax + 0xc]
jmp 0x100834ca
movss xmm0, dword [0x101a6280]
movss xmm1, dword [eax + 8]
movsd xmm2, qword [eax]
movsd qword [esp + 0x60], xmm2
movss dword [esp + 0x68], xmm1
movss dword [esp + 0x6c], xmm0
lea eax, [esp + 0x60]
push 0
push 0
push edx
push eax
push str.ColorButton
call fcn.10083cf0
mov ecx, dword [esp + 0x14]
add esp, 0x14
test al, al
je 0x10083571
mov eax, ecx
and eax, 4
jne 0x10083571
movups xmm0, xmmword [esp + 0x60]
movups xmmword [esi + 0x2c48], xmm0
push 0x101ec936
call fcn.1005b9c0
add esp, 4
xorps xmm0, xmm0
movlps qword [esp + 0x58], xmm0
movss xmm0, dword [ebp + 0x114]
movss xmm1, dword [ebp + 0x120]
unpcklps xmm0, xmm1
movss xmm1, dword [esi + 0x154c]
movaps xmm2, xmmword [0x101aee60]
unpcklps xmm2, xmm1
addps xmm2, xmm0
movlps qword [esp + 0x50], xmm2
lea eax, [esp + 0x58]
lea ecx, [esp + 0x50]
push eax
push 0
push ecx
call fcn.1005aca0
mov ecx, dword [esp + 0xc]
add esp, 0xc
test cl, 8
jne 0x10083585
push 1
push str.context
call fcn.1005be80
add esp, 8
xor edi, edi
push 0
push 0x101ec936
call fcn.1005c2a0
add esp, 8
test al, al
je 0x1008364b
mov edi, dword [esi + 0x19e4]
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0xd8]
je 0x100835f8
push 0
push dword [esp + 0x10]
push dword [esp + 0xe0]
call fcn.100825f0
add esp, 0xc
mov eax, dword [0x10258f60]
mov ecx, dword [eax + 0x19e4]
mov byte [ecx + 0x7c], 1
mov eax, dword [eax + 0x19e4]
cmp byte [eax + 0x7f], 0
jne 0x100835f8
xorps xmm0, xmm0
movlps qword [esp + 0x58], xmm0
lea eax, [esp + 0x58]
push 0
push eax
call fcn.1004bd00
add esp, 8
mov ebp, dword [esp + 0xe0]
and ebp, 0x1f890002
or ebp, 0x240080
movss xmm0, dword [esp + 0x40]
mulss xmm0, dword [0x101aea68]
sub esp, 4
movss dword [esp], xmm0
call fcn.10049370
push ebp
push dword [esp + 0xe4]
push str.picker
call fcn.100843c0
add esp, 0x10
or bl, al
call fcn.10049480
call fcn.1005c260
mov ebp, dword [esp + 8]
mov edx, dword [esp]
lea ecx, [esp + 0xb8]
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0xd8]
je 0x100836ab
mov eax, edx
and eax, 0x80
jne 0x100836ab
movss xmm0, dword [esi + 0x1550]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.1004bea0
add esp, 8
push 0
push dword [esp + 0x10]
push dword [esp + 0xe0]
call fcn.100825f0
lea ecx, [esp + 0xc4]
mov edx, dword [esp + 0xc]
add esp, 0xc
test bl, bl
je 0x100837d9
test edi, edi
jne 0x100837d9
test byte [esp + 4], 1
jne 0x100836dc
movups xmm0, xmmword [esp + 0xa0]
cvtdq2ps xmm0, xmm0
divps xmm0, xmmword [0x101aee50]
movups xmmword [esp + 0xb0], xmm0
mov eax, dword [esp + 0x14]
not eax
test eax, 0x8200000
jne 0x10083745
movss xmm0, dword [esp + 0xb8]
movss xmm1, dword [esp + 0xb0]
movss xmm2, dword [esp + 0xb4]
sub esp, 0x18
mov dword [esp + 0x14], ecx
lea eax, [esp + 0xcc]
mov dword [esp + 0x10], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0xc], eax
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm2
movss dword [esp], xmm1
call fcn.10048ec0
lea ecx, [esp + 0xd0]
mov edx, dword [esp + 0x18]
add esp, 0x18
cmp dword [esp + 0x44], 0x10100000
lea eax, [esp + 0xb4]
jne 0x100837a4
movss xmm0, dword [esp + 0xb8]
movss xmm1, dword [esp + 0xb0]
movss xmm2, dword [esp + 0xb4]
sub esp, 0x18
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0xc], eax
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm2
movss dword [esp], xmm1
call fcn.10048e00
mov edx, dword [esp + 0x18]
add esp, 0x18
movsd xmm0, qword [esp + 0xb0]
mov eax, dword [esp + 0xdc]
movsd qword [eax], xmm0
movss xmm0, dword [esp + 0xb8]
movss dword [eax + 8], xmm0
test dl, 2
jne 0x100837d9
movss xmm0, dword [esp + 0xbc]
movss dword [eax + 0xc], xmm0
call fcn.1005b0c0
call fcn.1005b3d0
test byte [ebp + 0x110], 1
je 0x100838c6
and dword [esp], 0x200
jne 0x100838c6
call fcn.1005d780
test al, al
je 0x100838c6
push 0
push str._COL3F
call fcn.1005d810
add esp, 8
test eax, eax
setne byte [esp + 0x28]
je 0x1008383b
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov edx, dword [esp + 0xdc]
mov dword [edx + 8], ecx
movsd xmm0, qword [eax]
movsd qword [edx], xmm0
mov bl, 1
push 0
push str._COL4F
call fcn.1005d810
add esp, 8
test eax, eax
movzx ecx, byte [esp + 0x28]
je 0x10083870
mov ecx, dword [esp + 0x38]
shl ecx, 2
push ecx
push dword [eax]
push dword [esp + 0xe4]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov bl, 1
mov cl, 1
test cl, cl
je 0x100838c1
and dword [esp + 0x14], 0x10000000
je 0x100838c1
mov edx, dword [esp + 0xdc]
lea eax, [edx + 4]
lea ecx, [edx + 8]
movss xmm0, dword [edx + 8]
movss xmm1, dword [edx]
movss xmm2, dword [edx + 4]
sub esp, 0x18
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm2
movss dword [esp], xmm1
call fcn.10048e00
add esp, 0x18
call fcn.1005db00
test edi, edi
je 0x100838e2
mov eax, dword [esi + 0x1a04]
test eax, eax
je 0x100838e2
cmp dword [esi + 0x1a2c], edi
jne 0x100838e2
mov dword [ebp + 0x10c], eax
test bl, bl
setne bl
je 0x100838f7
push dword [ebp + 0x10c]
call fcn.1004bcc0
add esp, 4
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.10155ad1
mov eax, ebx
add esp, 0xc4
pop esi
pop edi
pop ebx
pop ebp
ret
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3