Function at 0x405300
Capabilities:
Create process on windows
Encode data using xor
Enumerate processes
Execute command

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x447676
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x368
mov eax, dword [0x457080]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x405543
cmp byte [0x457a34], 1
jne 0x405543
movups xmm0, xmmword [0x453408]
mov eax, dword [0x453438]
xor ecx, ecx
cmp dword [0x457a2c], 2
movups xmmword [ebp - 0x33c], xmm0
mov dword [ebp - 0x30c], eax
movups xmm0, xmmword [0x453418]
mov ax, word [0x45343c]
mov word [ebp - 0x308], ax
mov al, byte [0x45343e]
movups xmmword [ebp - 0x32c], xmm0
mov byte [ebp - 0x306], al
movups xmm0, xmmword [0x453428]
movups xmmword [ebp - 0x31c], xmm0
jl 0x4054f0
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x338]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x33c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x33c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x30
jl 0x4053f0
cmp ecx, 0x37
jge 0x40551b
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x33c], dl
inc ecx
cmp ecx, 0x37
jl 0x4054f0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x33c]
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov eax, 0xfff0bdc1
jmp 0x4075a4
lea ecx, [ebp - 0x360]
call fcn.00401950
lea ecx, [ebp - 0x378]
call fcn.00402ab0
push ecx
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0
push ecx
mov ecx, eax
call fcn.004091e0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x364]
cmp ecx, 7
jbe 0x4055b2
mov edx, dword [ebp - 0x378]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4055a8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4055a8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
mov edi, dword [0x457a2c]
xor eax, eax
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 7
mov word [ebp - 0x378], ax
cmp byte [0x457a34], al
jne 0x405ab9
mov eax, dword [0x453454]
xor ecx, ecx
movq xmm0, qword [str.a_VDTDV]
mov dword [ebp - 0x2c8], eax
mov al, byte [0x453458]
movq qword [ebp - 0x2d0], xmm0
mov byte [ebp - 0x2c4], al
cmp edi, 2
jl 0x405710
movaps xmm2, xmmword [0x453550]
mov ecx, 8
movaps xmm4, xmmword [0x4535a0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.1111111111111111]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x453570]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x453560]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.a_VDTDV]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x2d0], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x453570]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [ebp - 0x2cc]
xorps xmm1, xmm0
movd dword [ebp - 0x2cc], xmm1
nop
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x2d0], dl
inc ecx
cmp ecx, 0xd
jl 0x405710
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x2d0]
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov eax, dword [str.I_OT_a]
xor ecx, ecx
movq xmm0, qword [str.rGAFPXC]
mov esi, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [ebp - 0x2c8], eax
mov ax, word [0x4531e8]
mov word [ebp - 0x2c4], ax
mov al, byte [0x4531ea]
movq qword [ebp - 0x2d0], xmm0
mov byte [ebp - 0x2c2], al
cmp edi, 2
jl 0x4058a0
movaps xmm2, xmmword [0x453550]
mov ecx, 8
movaps xmm4, xmmword [0x4535a0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [str.1111111111111111]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x453570]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x453560]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.rGAFPXC]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x2d0], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x453570]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [ebp - 0x2cc]
xorps xmm1, xmm0
movd dword [ebp - 0x2cc], xmm1
nop word [eax + eax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x2d0], dl
inc ecx
cmp ecx, 0xf
jl 0x4058a0
lea edx, [ebp - 0x2d0]
mov ecx, esi
call fcn.00409610
cmp dword [ebp - 0x6c], 0xf
lea edx, [ebp - 0x80]
push dword [ebp - 0x70]
cmova edx, dword [ebp - 0x80]
mov ecx, eax
call fcn.0040a6a0
add esp, 4
mov ecx, eax
push 0x409830
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov eax, dword [0x453368]
movups xmm0, xmmword [str.bFRFA_Y_]
mov dword [ebp - 0x2ec], eax
mov ax, word [0x45336c]
mov word [ebp - 0x2e8], ax
movups xmmword [ebp - 0x2fc], xmm0
test ah, ah
je 0x405a9b
xor ecx, ecx
cmp edi, 2
jl 0x405a70
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x2f8]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x2fc]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x2fc], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x405970
cmp ecx, 0x16
jge 0x405a9b
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x2fc], dl
inc ecx
cmp ecx, 0x16
jl 0x405a70
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x2fc]
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov eax, dword [str.r_bo_QB7]
xor edx, edx
mov dword [ebp - 0x2c8], eax
mov ax, word [0x453500]
mov word [ebp - 0x2c4], ax
mov al, byte [0x453502]
mov byte [ebp - 0x2c2], al
mov dword [ebp - 0x2dc], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x2dc]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x31
xor byte [ebp + edx - 0x2c8], cl
inc edx
mov dword [ebp - 0x2dc], edx
cmp edx, 7
jl 0x405ae4
lea eax, [ebp - 0x2c8]
mov byte [ebp - 0x2dc], 0
push dword [ebp - 0x2dc]
lea edx, [ebp - 0x2b4]
mov dword [ebp - 0x2b4], eax
lea ecx, [ebp - 0x320]
call fcn.0040a890
add esp, 4
lea ecx, [ebp - 0x320]
mov byte [ebp - 4], 3
call fcn.00402780
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x30c]
mov byte [ebp - 0x2d1], al
cmp ecx, 7
jbe 0x405ba2
mov edx, dword [ebp - 0x320]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x405b92
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x405b92
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
mov al, byte [ebp - 0x2d1]
add esp, 8
test al, al
jne 0x406bbb
lea ecx, [ebp - 0x320]
call fcn.00404fa0
mov ecx, eax
mov byte [ebp - 4], 4
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 4
jb 0x405be7
lea eax, [edx + 4]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x405bd9
mov eax, dword [ecx]
mov dword [eax + edx], 0x6578652e
mov byte [eax + edx + 4], 0
jmp 0x405c04
push 4
push str..exe
mov byte [ebp - 0x2dc], 0
push dword [ebp - 0x2dc]
push 4
call fcn.0040a260
mov ecx, eax
mov dword [ebp - 0x34], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x30], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x44], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x34], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x30c]
cmp ecx, 0xf
jbe 0x405c7b
mov edx, dword [ebp - 0x320]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x405c71
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x405c71
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
cmp byte [0x457a34], 0
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x30c], 0xf
mov byte [ebp - 0x320], 0
jne 0x405e64
mov ax, word [0x453544]
xor ecx, ecx
mov word [ebp - 0x2e8], ax
mov al, byte [0x453546]
mov byte [ebp - 0x2e6], al
movups xmm0, xmmword [str.cS_PZ_]
movups xmmword [ebp - 0x2f8], xmm0
cmp edi, 2
jl 0x405e03
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x2f4]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x2f8]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x2f8], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x405d03
cmp ecx, 0x13
jge 0x405e2e
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x2f8], dl
inc ecx
cmp ecx, 0x13
jl 0x405e03
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x2f8]
call fcn.00409610
cmp dword [ebp - 0x30], 0xf
lea edx, [ebp - 0x44]
push dword [ebp - 0x34]
cmova edx, dword [ebp - 0x44]
mov ecx, eax
call fcn.0040a6a0
add esp, 4
mov ecx, eax
push 0x409830
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x2fc]
call fcn.00402920
push ecx
lea ecx, [ebp - 0x354]
mov byte [ebp - 4], 7
push ecx
mov ecx, eax
call fcn.004091e0
mov edx, dword [ebp - 0x340]
lea esi, [ebp - 0x354]
mov ecx, dword [ebp - 0x354]
cmp edx, 0xf
cmova esi, ecx
jbe 0x405ec1
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x405eb7
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x405f12
push edx
push ecx
call fcn.00445c77
add esp, 8
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x344], 0
mov dword [ebp - 0x340], 0xf
mov byte [ebp - 0x354], 0
cmp ecx, 7
jbe 0x405f22
mov edx, dword [ebp - 0x2fc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x405f18
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x405f18
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x405f27
sub ecx, edx
mov eax, bind
mov edx, dword [ebp - 0x34]
sub eax, edx
cmp eax, ecx
jb 0x4075c2
cmp dword [ebp - 0x30], 0xf
lea eax, [ebp - 0x44]
push edx
cmova eax, dword [ebp - 0x44]
push eax
push ecx
push esi
push ecx
push dword [ebp - 0x2dc]
lea ecx, [ebp - 0x5c]
call fcn.0040a430
mov byte [ebp - 4], 8
lea edi, [ebp - 0x5c]
movups xmm0, xmmword [0x453158]
cmp dword [ebp - 0x48], 0xf
mov al, byte [0x453178]
cmova edi, dword [ebp - 0x5c]
xor edx, edx
mov esi, dword [0x457a2c]
mov dword [ebp - 0x2dc], edi
mov byte [ebp - 0x2e4], al
mov dword [ebp - 0x2b4], edx
movups xmmword [ebp - 0x304], xmm0
movups xmm0, xmmword [0x453168]
movups xmmword [ebp - 0x2f4], xmm0
cmp esi, 2
jl 0x4060f0
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x300]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov ecx, dword [ebp - 0x2d0]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x304]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + edx - 0x304], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edx + esi]
xorps xmm1, xmm0
movd dword [edx + esi], xmm1
add edx, 8
cmp edx, 0x20
jl 0x405fe2
mov esi, dword [0x457a2c]
mov dword [ebp - 0x2b4], edx
cmp edx, 0x21
jge 0x406127
nop
mov eax, 0x51eb851f
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x2b4]
movsx eax, al
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x31
xor byte [ebp + edx - 0x304], cl
inc edx
mov dword [ebp - 0x2b4], edx
cmp edx, 0x21
jl 0x4060f0
mov byte [ebp - 0x2b4], 0
lea edx, [ebp - 0x2dc]
push dword [ebp - 0x2b4]
lea ecx, [ebp - 0x320]
call fcn.0040a890
add esp, 4
lea ecx, [ebp - 0x320]
mov byte [ebp - 4], 9
call fcn.00402780
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x30c]
mov byte [ebp - 0x2d1], al
cmp ecx, 7
jbe 0x4061a9
mov edx, dword [ebp - 0x320]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x406199
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x406199
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
mov al, byte [ebp - 0x2d1]
add esp, 8
test al, al
je 0x406227
mov byte [ebp - 0x2b4], 0
lea edx, [ebp - 0x2dc]
push dword [ebp - 0x2b4]
lea ecx, [ebp - 0x320]
call fcn.0040a890
add esp, 4
lea ecx, [ebp - 0x320]
mov byte [ebp - 4], 0xa
call fcn.004028f0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x30c]
cmp ecx, 7
jbe 0x406227
mov edx, dword [ebp - 0x320]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40621d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40621d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
mov edx, edi
lea ecx, [ebp - 0x304]
call fcn.00404ef0
cmp byte [0x457a34], 0
jne 0x406409
movups xmm0, xmmword [0x4531b4]
mov eax, dword [0x4531d4]
xor ecx, ecx
mov dword [ebp - 0x30c], eax
mov ax, word [0x4531d8]
mov word [ebp - 0x308], ax
mov al, byte [0x4531da]
mov byte [ebp - 0x306], al
movups xmmword [ebp - 0x32c], xmm0
movups xmm0, xmmword [0x4531c4]
movups xmmword [ebp - 0x31c], xmm0
cmp esi, 2
jl 0x4063c0
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x328]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x32c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x32c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x20
jl 0x4062c0
cmp ecx, 0x27
jge 0x4063eb
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x32c], dl
inc ecx
cmp ecx, 0x27
jl 0x4063c0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x32c]
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x2c8]
mov dword [ebp - 0x2c8], 0x64
mov dword [ebp - 0x2c4], 0
call fcn.00409860
lea ecx, [ebp - 0x320]
call fcn.00402920
mov esi, eax
sub esp, 0x18
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x44]
mov dword [ebp - 0x2b4], esp
mov ecx, esp
push eax
call fcn.00408a00
sub esp, 0x18
mov byte [ebp - 4], 0xc
mov eax, esp
mov dword [ebp - 0x2c4], eax
push ecx
push eax
mov ecx, esi
call fcn.004091e0
mov byte [ebp - 4], 0xb
call fcn.00403360
mov byte [ebp - 4], 8
add esp, 0x30
mov ecx, dword [ebp - 0x30c]
cmp ecx, 7
jbe 0x4064b7
mov edx, dword [ebp - 0x320]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4064ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4064ad
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
cmp byte [0x457a34], 0
jne 0x406689
movups xmm0, xmmword [0x453184]
mov ax, word [0x4531a4]
xor ecx, ecx
cmp dword [0x457a2c], 2
movups xmmword [ebp - 0x328], xmm0
mov word [ebp - 0x308], ax
movups xmm0, xmmword [0x453194]
mov al, byte [0x4531a6]
mov byte [ebp - 0x306], al
movups xmmword [ebp - 0x318], xmm0
jl 0x406640
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x324]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x328]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x328], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x20
jl 0x406540
cmp ecx, 0x23
jge 0x40666b
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x328], dl
inc ecx
cmp ecx, 0x23
jl 0x406640
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x328]
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov eax, dword [str.BVZ5]
xor edx, edx
mov dword [ebp - 0x2c8], eax
mov al, byte [0x4534ac]
mov byte [ebp - 0x2c4], al
mov dword [ebp - 0x2b4], edx
nop word [eax + eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x2b4]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x31
xor byte [ebp + edx - 0x2c8], cl
inc edx
mov dword [ebp - 0x2b4], edx
cmp edx, 5
jl 0x4066b0
push 0
push 0
push 0
push edi
lea eax, [ebp - 0x2c8]
push eax
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [ebp - 0x2c8]
mov dword [ebp - 0x2c8], 1
mov dword [ebp - 0x2c4], 0
call fcn.00409900
cmp dword [ebp - 0x30], 0xf
lea edx, [ebp - 0x44]
mov eax, dword [ebp - 0x34]
lea edi, [ebp - 0x44]
cmova edx, dword [ebp - 0x44]
xorps xmm0, xmm0
add eax, edx
cmp dword [ebp - 0x30], 0xf
mov dword [ebp - 0x2b4], eax
cmova edi, dword [ebp - 0x44]
movups xmmword [ebp - 0x2c], xmm0
cmp edi, eax
jne 0x40675a
xor eax, eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
jmp 0x40683b
sub eax, edi
xor edx, edx
mov dword [ebp - 0x1c], edx
mov esi, 7
mov dword [ebp - 0x18], esi
cmp eax, 0x7ffffffe
ja 0x4075c7
cmp eax, esi
jbe 0x406800
mov esi, eax
or esi, 7
cmp esi, 0x7ffffffe
jbe 0x406797
mov eax, bind
mov esi, bind
add eax, eax
jmp 0x4067b8
mov eax, 0xa
cmp esi, eax
cmovb esi, eax
lea eax, [esi + 1]
cmp eax, 0x7fffffff
ja 0x4075cc
add eax, eax
cmp eax, 0x1000
jb 0x4067e4
lea ecx, [eax + 0x23]
cmp ecx, eax
jbe 0x4075cc
push ecx
call fcn.00445c47
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x406bab
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
mov edx, dword [ebp - 0x1c]
jmp 0x4067f8
test eax, eax
je 0x4067f6
push eax
call fcn.00445c47
mov edx, dword [ebp - 0x1c]
add esp, 4
jmp 0x4067f8
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x18], esi
nop
movsx ax, byte [edi]
lea ecx, [ebp - 0x2c]
cmp esi, 7
cmova ecx, dword [ebp - 0x2c]
inc edi
movzx eax, ax
mov word [ecx + edx*2], ax
mov edx, dword [ebp - 0x1c]
inc edx
mov dword [ebp - 0x1c], edx
cmp edi, dword [ebp - 0x2b4]
je 0x40682a
mov esi, dword [ebp - 0x18]
jmp 0x406800
cmp dword [ebp - 0x18], 7
lea eax, [ebp - 0x2c]
cmova eax, dword [ebp - 0x2c]
xor ecx, ecx
mov word [eax + edx*2], cx
mov byte [ebp - 4], 0xd
nop
cmp dword [ebp - 0x18], 7
lea edi, [ebp - 0x2c]
push 0
cmova edi, dword [ebp - 0x2c]
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov esi, eax
mov dword [ebp - 0x2b0], 0x22c
lea eax, [ebp - 0x2b0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x40689b
push edi
lea eax, [ebp - 0x28c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x40690e
lea eax, [ebp - 0x2b0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x406873
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 0x2b4], 0
lea edx, [ebp - 0x2dc]
push dword [ebp - 0x2b4]
lea ecx, [ebp - 0x320]
call fcn.0040a890
add esp, 4
lea ecx, [ebp - 0x320]
mov byte [ebp - 4], 0xe
call fcn.004028f0
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x30c]
cmp ecx, 7
jbe 0x406922
mov edx, dword [ebp - 0x320]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x406918
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x406918
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
test esi, esi
jne 0x406840
jmp 0x4068a2
push ecx
push edx
call fcn.00445c77
add esp, 8
cmp byte [0x457a34], 0
mov edi, dword [0x457a2c]
jne 0x406ae9
movups xmm0, xmmword [str.bFVUYSE]
mov eax, dword [0x4532f0]
xor ecx, ecx
mov dword [ebp - 0x30c], eax
movups xmmword [ebp - 0x32c], xmm0
movups xmm0, xmmword [0x4532e0]
movups xmmword [ebp - 0x31c], xmm0
cmp edi, 2
jl 0x406aa0
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x328]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x32c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x32c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x20
jl 0x4069a0
cmp ecx, 0x24
jge 0x406acb
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x32c], dl
inc ecx
cmp ecx, 0x24
jl 0x406aa0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x32c]
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x18]
cmp ecx, 7
jbe 0x406b27
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x406b1d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x406bab
push ecx
push edx
call fcn.00445c77
add esp, 8
xor eax, eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
cmp ecx, 0xf
jbe 0x406b6f
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x406b65
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x406bab
push ecx
push edx
call fcn.00445c77
add esp, 8
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
cmp ecx, 0xf
jbe 0x406bbb
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x406bb1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x406bb1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
mov al, byte [0x453250]
xor edx, edx
movq xmm0, qword [0x453248]
mov byte [ebp - 0x2c4], al
movq qword [ebp - 0x2cc], xmm0
mov dword [ebp - 0x2dc], edx
nop
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x2dc]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x31
xor byte [ebp + edx - 0x2cc], cl
inc edx
mov dword [ebp - 0x2dc], edx
cmp edx, 9
jl 0x406be0
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x2ec], 0
push 0x4530f0
lea ecx, [ebp - 0x2fc]
mov dword [ebp - 0x2e8], 0
movups xmmword [ebp - 0x2fc], xmm0
call fcn.00409bf0
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x80]
cmp dword [ebp - 0x6c], 0xf
push dword [ebp - 0x70]
cmova eax, dword [ebp - 0x80]
push eax
push ecx
lea ecx, [ebp - 0x2fc]
call fcn.00408e60
mov dword [ebp - 0x1c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x18], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x2cc]
mov byte [ebp - 4], 0x10
push eax
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0x320]
call fcn.004094b0
mov esi, eax
add esp, 4
cmp dword [esi + 0x14], 0xf
jbe 0x406cbc
mov esi, dword [esi]
mov ecx, dword [ebp - 0x30c]
cmp ecx, 0xf
jbe 0x406cf6
mov edx, dword [ebp - 0x320]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x406cec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x406d87
push ecx
push edx
call fcn.00445c77
add esp, 8
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x30c], 0xf
mov byte [ebp - 0x320], 0
cmp ecx, 0xf
jbe 0x406d45
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x406d3b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x406d87
push ecx
push edx
call fcn.00445c77
add esp, 8
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
cmp ecx, 0xf
jbe 0x406d97
mov edx, dword [ebp - 0x2fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x406d8d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x406d8d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
movups xmm0, xmmword [str.YFGDF_f]
mov eax, dword [0x453328]
xor edx, edx
mov dword [ebp - 0x2ec], 0
mov dword [ebp - 0x2e8], 0xf
mov byte [ebp - 0x2fc], 0
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x2dc], edx
movups xmmword [ebp - 0x68], xmm0
movups xmm0, xmmword [0x453318]
movups xmmword [ebp - 0x58], xmm0
cmp edi, 2
jl 0x406f16
movaps xmm0, xmmword [str.1111111111111111]
lea edi, [ebp - 0x64]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov ecx, dword [ebp - 0x2d0]
nop dword [eax]
movd xmm0, edx
lea eax, [edx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x68]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + edx - 0x68], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [edi + edx]
xorps xmm1, xmm0
movd dword [edi + edx], xmm1
add edx, 8
cmp edx, 0x20
jl 0x406e10
mov edi, dword [0x457a2c]
mov dword [ebp - 0x2dc], edx
cmp edx, 0x24
jge 0x406f4a
mov eax, 0x51eb851f
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x2dc]
movsx eax, al
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x31
xor byte [ebp + edx - 0x68], cl
inc edx
mov dword [ebp - 0x2dc], edx
cmp edx, 0x24
jl 0x406f16
mov edx, esi
lea ecx, [ebp - 0x68]
call fcn.00404ef0
cmp byte [0x457a34], 0
jne 0x407129
movups xmm0, xmmword [str.u__Q]
mov eax, dword [0x4534a0]
xor ecx, ecx
mov dword [ebp - 0x30c], eax
mov ax, word [0x4534a4]
mov word [ebp - 0x308], ax
mov al, byte [0x4534a6]
mov byte [ebp - 0x306], al
movups xmmword [ebp - 0x32c], xmm0
movups xmm0, xmmword [0x453490]
movups xmmword [ebp - 0x31c], xmm0
cmp edi, 2
jl 0x4070e0
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x328]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x32c]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x32c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x20
jl 0x406fe0
cmp ecx, 0x27
jge 0x40710b
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x32c], dl
inc ecx
cmp ecx, 0x27
jl 0x4070e0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea edx, [ebp - 0x32c]
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x2ec], 0
push str.start
lea ecx, [ebp - 0x2fc]
mov dword [ebp - 0x2e8], 0
movups xmmword [ebp - 0x2fc], xmm0
call fcn.00409bf0
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x2e8]
mov eax, edx
mov ecx, dword [ebp - 0x2ec]
sub eax, ecx
push 8
push str.v1.0.exe
cmp eax, 8
jb 0x4071a9
cmp edx, 0xf
lea esi, [ebp - 0x2fc]
lea eax, [ecx + 8]
cmova esi, dword [ebp - 0x2fc]
add esi, ecx
mov dword [ebp - 0x2ec], eax
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 8], 0
lea eax, [ebp - 0x2fc]
jmp 0x4071c3
mov byte [ebp - 0x2dc], 0
lea ecx, [ebp - 0x2fc]
push dword [ebp - 0x2dc]
push 8
call fcn.0040a260
mov esi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
xorps xmm0, xmm0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
cmova eax, dword [ebp - 0x2c]
push eax
call esi
mov ecx, dword [ebp - 0x18]
add esp, 4
cmp ecx, 0xf
jbe 0x407241
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x407237
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407283
push ecx
push edx
call fcn.00445c77
add esp, 8
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
cmp ecx, 0xf
jbe 0x407293
mov edx, dword [ebp - 0x2fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x407289
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x407289
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
lea ecx, [ebp - 0x2c8]
call fcn.00401950
lea eax, [ebp - 0x360]
push eax
lea edx, [ebp - 0x2c8]
lea ecx, [ebp - 0x2e0]
call fcn.004099a0
add esp, 4
push 0
push 0xf4240
push dword [eax + 4]
push dword [eax]
call fcn.00445f00
cmp byte [0x457a34], 0
mov edi, eax
mov dword [ebp - 0x2dc], edx
jne 0x407507
mov eax, dword [0x4534e8]
movups xmm0, xmmword [str.BFRFA]
mov esi, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [ebp - 0x2ec], eax
mov ax, word [0x4534ec]
mov word [ebp - 0x2e8], ax
movups xmmword [ebp - 0x2fc], xmm0
test ah, ah
je 0x40748b
xor ecx, ecx
cmp dword [0x457a2c], 2
jl 0x407460
movaps xmm0, xmmword [str.1111111111111111]
lea esi, [ebp - 0x2f8]
movaps xmm4, xmmword [0x453550]
movaps xmm3, xmmword [0x4535a0]
movaps xmm5, xmmword [0x453570]
movaps xmmword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2d0]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x2fc]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x2fc], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x453580]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esi + ecx]
xorps xmm1, xmm0
movd dword [esi + ecx], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x407351
mov esi, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
cmp ecx, 0x16
jge 0x40748b
nop word [eax + eax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, cl
movsx eax, al
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x2fc], dl
inc ecx
cmp ecx, 0x16
jl 0x407460
lea edx, [ebp - 0x2fc]
mov ecx, esi
call fcn.00409610
push dword [ebp - 0x2dc]
mov ecx, eax
push edi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
mov esi, eax
xor ecx, ecx
mov ax, word [0x4534cc]
mov word [ebp - 0x2b4], ax
mov al, byte [0x4534ce]
mov byte [ebp - 0x2b2], al
mov eax, 0x51eb851f
mul ecx
shr edx, 4
movsx eax, dl
mov dl, cl
imul eax, eax, 0x32
sub dl, al
add dl, 0x31
xor byte [ebp + ecx - 0x2b4], dl
inc ecx
cmp ecx, 3
jl 0x4074c3
lea edx, [ebp - 0x2b4]
mov ecx, esi
call fcn.00409610
push 0x409830
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov esi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov eax, dword [str.ASFGP6]
mov dword [ebp - 0x2c8], eax
mov ax, word [0x453180]
mov word [ebp - 0x2c4], ax
test ah, ah
je 0x407560
xor edx, edx
mov dword [ebp - 0x2dc], edx
nop dword [eax + eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x2dc]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x31
xor byte [ebp + edx - 0x2c8], cl
inc edx
mov dword [ebp - 0x2dc], edx
cmp edx, 6
jl 0x407530
lea eax, [ebp - 0x2c8]
push eax
call esi
mov ecx, dword [ebp - 0x6c]
add esp, 4
cmp ecx, 0xf
jbe 0x4075a2
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x407598
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x407598
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00445c77
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00445c39
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00401170
call fcn.00401170
call fcn.004010d0
int3