Function at 0x14003dd10
Capabilities:
Encode data using xor
Log keystrokes via polling
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
lea rbp, [rsp - 0x10]
sub rsp, 0x110
movaps xmmword [rsp + 0x100], xmm6
mov rax, qword [0x140053040]
xor rax, rsp
mov qword [rbp - 0x78], rax
mov ecx, dword [0x14006ce48]
test ecx, ecx
je 0x14003dd53
cmp ecx, 1
jne 0x14003dd5d
mov dword [0x14006ce44], 0xa0
jmp 0x14003dd5d
mov dword [0x14006ce44], 2
movss xmm6, dword [0x14004b794]
xor ebx, ebx
cmp byte [0x14006d6a8], bl
mov qword [rsp + 0x120], rsi
mov qword [rsp + 0x128], rdi
je 0x14003de5b
mov rax, qword [0x14006d590]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax + 0x48b0]
mov rcx, qword [rcx]
call fcn.140006730
movdqa xmm0, xmmword [0x14004bc00]
lea rcx, [rsp + 0x40]
movups xmmword [rsp + 0x40], xmm0
mov rdi, rax
call fcn.140003110
movd xmm2, dword [0x14006d6cc]
mov esi, eax
movd xmm0, dword [0x14006d6d0]
movd xmm1, dword [0x14006d6d4]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
addss xmm2, dword [0x14006ce98]
movss dword [rsp + 0x58], xmm0
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x5c], xmm1
test eax, 0xff000000
je 0x14003de5b
movss xmm0, dword [0x14004b760]
comiss xmm0, xmm2
ja 0x14003de5b
subss xmm2, xmm0
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x14004b7f0]
lea rdx, [rsp + 0x58]
xorps xmm3, xmm3
movss dword [rsp + 0x20], xmm0
mov rcx, rdi
call fcn.140024b90
mov r8d, dword [rdi + 0x78]
mov r9d, esi
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 1
call fcn.140023120
mov dword [rdi + 0x78], ebx
mov rax, qword [0x14006d590]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax + 0x48b0]
mov rcx, qword [rcx]
call fcn.140006730
movsd xmm0, qword [str.fVJXROX_]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x70], xmm0
mov r10, rax
movzx eax, byte [0x14004b4c0]
movdqa xmm0, xmmword [0x14004bd50]
xor al, 0x3e
xor byte [rsp + 0x71], 0x37
xor byte [rsp + 0x72], 0x38
xor byte [rsp + 0x73], 0x39
xor byte [rsp + 0x74], 0x3a
xor byte [rsp + 0x75], 0x3b
xor byte [rsp + 0x76], 0x3c
xor byte [rsp + 0x77], 0x3d
mov byte [rsp + 0x78], al
movups xmmword [rsp + 0x40], xmm0
mov byte [rsp + 0x70], 0x50
mov dword [rsp + 0x58], 0x41000000
mov dword [rsp + 0x5c], 0x41200000
call fcn.140003110
mov r8d, eax
lea rdx, [rsp + 0x58]
lea r9, [rsp + 0x70]
mov rcx, r10
call fcn.140025960
mov rax, qword [0x14006d590]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax + 0x48b0]
mov rcx, qword [rcx]
call fcn.140006730
movsd xmm0, qword [0x14004b530]
mov r10, rax
movzx ecx, byte [0x14004b538]
movsd qword [rsp + 0x70], xmm0
xor cl, 0x3e
movdqa xmm0, xmmword [0x14004bd10]
xor byte [rsp + 0x71], 0x37
xor byte [rsp + 0x72], 0x38
xor byte [rsp + 0x73], 0x39
xor byte [rsp + 0x74], 0x3a
xor byte [rsp + 0x75], 0x3b
xor byte [rsp + 0x76], 0x3c
xor byte [rsp + 0x77], 0x3d
mov byte [rsp + 0x78], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x70], 0x58
movups xmmword [rsp + 0x40], xmm0
mov dword [rsp + 0x58], 0x42820000
mov dword [rsp + 0x5c], 0x41200000
call fcn.140003110
mov r8d, eax
lea rdx, [rsp + 0x58]
lea r9, [rsp + 0x70]
mov rcx, r10
call fcn.140025960
mov ecx, 0x2d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov rsi, qword [rsp + 0x120]
test al, 1
je 0x14003dfc6
cmp byte [0x14006cea1], bl
sete al
mov byte [0x14006cea1], al
jmp 0x14003dfcd
movzx eax, byte [0x14006cea1]
test al, al
je 0x14003faef
mov rax, qword [0x14006d590]
movups xmm0, xmmword [0x14004b698]
movdqa xmm6, xmmword [0x14004b930]
or dword [rax + 0x47b0], 2
movaps xmmword [rsp + 0xf0], xmm7
movdqa xmm7, xmmword [0x14004b940]
movaps xmmword [rsp + 0xe0], xmm8
movdqa xmm8, xmmword [0x14004b950]
movaps xmmword [rsp + 0xd0], xmm9
movdqa xmm9, xmmword [0x14004bd90]
movaps xmmword [rsp + 0xc0], xmm10
movaps xmmword [rsp + 0xb0], xmm11
movdqa xmm11, xmmword [0x14004b9a0]
mov dword [rax + 0x47d0], 0x441b0000
mov dword [rax + 0x47d4], 0x43af0000
mov dword [rax + 0x47b8], 1
mov edi, dword [0x140053010]
movaps xmmword [rsp + 0xa0], xmm12
movdqa xmm12, xmmword [str.6666]
movups xmmword [rsp + 0x40], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
movaps xmmword [rsp + 0x90], xmm13
movdqa xmm13, xmmword [0x14004b9f0]
test al, al
je 0x14003e273
mov r8d, ebx
cmp edi, 2
jl 0x14003e238
movdqa xmm2, xmmword [0x14004b960]
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
pmuldq xmm1, xmm9
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, dword [0x14004b698]
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm13
xorps xmm1, xmm0
movdqa xmm0, xmm7
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm7
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, dword [rsp + 0x44]
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm13
xorps xmm1, xmm0
movdqa xmm0, xmm8
movd dword [rsp + 0x44], xmm1
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm8
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, dword [rsp + 0x48]
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm13
xorps xmm1, xmm0
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
movd dword [rsp + 0x48], xmm1
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
psubd xmm2, xmm0
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm13
movd xmm0, dword [rsp + 0x4c]
xorps xmm2, xmm0
movd dword [rsp + 0x4c], xmm2
jmp 0x14003e273
lea r9, [rsp + 0x40]
nop dword [rax]
mov eax, 0x2f684bdb
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 0x10
jl 0x14003e240
mov r8d, 0x2a
lea rcx, [rsp + 0x40]
xor edx, edx
call fcn.14000c5b0
mov eax, dword [str.wU_UO_]
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x58], eax
lea rcx, [rsp + 0x58]
movzx eax, word [0x14004b5b0]
xor byte [rsp + 0x59], 0x37
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
mov word [rsp + 0x5c], ax
movzx eax, byte [0x14004b5b2]
xor byte [rsp + 0x5c], 0x3a
xor al, 0x3c
xor byte [rsp + 0x5d], 0x3b
mov byte [rsp + 0x5e], al
mov dword [rsp + 0x70], 0x43440000
mov dword [rsp + 0x74], 0x41c80000
mov byte [rsp + 0x58], 0x41
call fcn.14002e4c0
test al, al
je 0x14003e2ef
mov dword [0x14006d6a4], ebx
movss xmm10, dword [0x14004b86c]
xorps xmm0, xmm0
movaps xmm1, xmm10
call fcn.140011f70
cmp byte [0x14004b597], bl
mov rax, qword [str._KL_WOsYY_V]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x70], 0x43440000
mov dword [rsp + 0x74], 0x41c80000
je 0x14003e443
mov r8d, ebx
cmp edi, 2
jl 0x14003e405
movd eax, xmm13
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
movdqa xmm2, xmm6
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x58]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm7
xorps xmm2, xmm1
punpckhdq xmm0, xmm7
movd dword [rsp + 0x58], xmm2
movdqa xmm1, xmm7
pmuldq xmm0, xmm9
movdqa xmm2, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x5c]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
jmp 0x14003e443
lea r9, [rsp + 0x58]
nop word [rax + rax]
mov eax, 0x2f684bdb
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x14003e410
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x58]
call fcn.14002e4c0
movzx edx, byte [0x14004b3ac]
test al, al
mov eax, dword [str.KZ:]
xorps xmm0, xmm0
mov dword [rsp + 0x70], eax
movaps xmm1, xmm10
mov dword [rsp + 0x58], 0x43440000
mov dword [rsp + 0x5c], 0x41c80000
je 0x14003e488
mov dword [0x14006d6a4], 1
call fcn.140011f70
xor byte [rsp + 0x71], 0x37
lea rcx, [rsp + 0x70]
xor byte [rsp + 0x72], 0x38
xor dl, 0x3a
xor byte [rsp + 0x73], 0x39
mov byte [rsp + 0x74], dl
lea rdx, [rsp + 0x58]
mov byte [rsp + 0x70], 0x4d
call fcn.14002e4c0
test al, al
je 0x14003e4c8
mov ecx, 2
mov dword [0x14006d6a4], ecx
jmp 0x14003e4ce
mov ecx, dword [0x14006d6a4]
test ecx, ecx
je 0x14003eb06
sub ecx, 1
je 0x14003e557
cmp ecx, 1
jne 0x14003faac
movzx ecx, word [0x14004b3b4]
lea rdx, [rsp + 0x70]
mov eax, dword [str.cYTV___]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x14004b3b6]
xor byte [rsp + 0x59], 0x37
xor al, 0x3c
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
mov word [rsp + 0x5c], cx
xor cl, 0x3a
xor byte [rsp + 0x5d], 0x3b
mov byte [rsp + 0x5c], cl
lea rcx, [rsp + 0x58]
mov dword [rsp + 0x70], 0x42f00000
mov dword [rsp + 0x74], 0x42200000
mov byte [rsp + 0x58], 0x55
mov byte [rsp + 0x5e], al
call fcn.14002e4c0
test al, al
je 0x14003faac
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
movzx ecx, word [0x14004b548]
movzx eax, byte [0x14004b54a]
movsd xmm0, qword [str._KL_W]
xor al, 0x40
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x37
xor byte [rsp + 0x42], 0x38
xor byte [rsp + 0x43], 0x39
xor byte [rsp + 0x44], 0x3a
xor byte [rsp + 0x45], 0x3b
xor byte [rsp + 0x46], 0x3c
xor byte [rsp + 0x47], 0x3d
mov word [rsp + 0x48], cx
xor cl, 0x3e
xor byte [rsp + 0x49], 0x3f
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x56
mov byte [rsp + 0x4a], al
call fcn.14002db50
movzx ecx, word [0x14004b400]
lea rdx, [0x14006ce8b]
mov eax, dword [str.sYY_V_]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x14004b402]
xor byte [rsp + 0x59], 0x37
xor al, 0x3c
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
mov word [rsp + 0x5c], cx
xor cl, 0x3a
xor byte [rsp + 0x5d], 0x3b
mov byte [rsp + 0x5c], cl
lea rcx, [rsp + 0x58]
mov byte [rsp + 0x58], 0x45
mov byte [rsp + 0x5e], al
call fcn.14002f340
cmp byte [0x14004b703], bl
mov eax, dword [str.tX_9]
mov dword [rbp - 0x80], eax
je 0x14003e6c3
mov r8d, ebx
cmp edi, 2
jl 0x14003e68c
movdqa xmm1, xmm6
movdqa xmm0, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm9
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm13
xorps xmm1, xmm0
movd dword [rbp - 0x80], xmm1
jmp 0x14003e6c3
lea r9, [rbp - 0x80]
mov eax, 0x2f684bdb
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x36
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x14003e690
lea rdx, [0x14006ce8a]
lea rcx, [rbp - 0x80]
call fcn.14002f340
movsd xmm0, qword [0x14004b3f0]
movaps xmm1, xmm10
movzx eax, word [0x14004b3f8]
movzx edx, byte [0x14004b3fa]
movsd qword [rsp + 0x40], xmm0
xorps xmm0, xmm0
mov word [rsp + 0x48], ax
call fcn.140011f70
xor byte [rsp + 0x41], 0x37
lea r9, [0x14006ce70]
xor byte [rsp + 0x42], 0x38
lea rcx, [rsp + 0x40]
xor byte [rsp + 0x43], 0x39
xor dl, 0x40
xor byte [rsp + 0x44], 0x3a
xor byte [rsp + 0x45], 0x3b
xor byte [rsp + 0x46], 0x3c
xor byte [rsp + 0x47], 0x3d
xor byte [rsp + 0x48], 0x3e
xor byte [rsp + 0x49], 0x3f
mov byte [rsp + 0x4a], dl
lea rdx, [0x14006ce90]
mov byte [rsp + 0x40], 0x23
mov dword [rsp + 0x20], 3
call fcn.140030620
cmp byte [0x14006ce8a], bl
jne 0x14003e769
mov byte [0x14006ce8c], bl
jmp 0x14003e7e1
movaps xmm1, xmm10
xorps xmm0, xmm0
call fcn.140011f70
movzx ecx, word [0x14004b558]
lea rdx, [0x14006ce8c]
movsd xmm4, qword [str.pTU__]
movzx eax, byte [0x14004b55a]
movsd qword [rsp + 0x40], xmm4
xor al, 0x40
xor byte [rsp + 0x41], 0x37
xor byte [rsp + 0x42], 0x38
xor byte [rsp + 0x43], 0x39
xor byte [rsp + 0x44], 0x3a
xor byte [rsp + 0x45], 0x3b
xor byte [rsp + 0x46], 0x3c
xor byte [rsp + 0x47], 0x3d
mov word [rsp + 0x48], cx
xor cl, 0x3e
xor byte [rsp + 0x49], 0x3f
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x46
mov byte [rsp + 0x4a], al
call fcn.14002f340
mov eax, dword [str.aRYIUU_]
lea rdx, [0x14006ce94]
mov dword [rsp + 0x58], eax
lea rcx, [rsp + 0x58]
movzx eax, word [0x14004b478]
xor byte [rsp + 0x59], 0x37
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
mov word [rsp + 0x5c], ax
movzx eax, byte [0x14004b47a]
xor byte [rsp + 0x5c], 0x3a
xor al, 0x3c
xor byte [rsp + 0x5d], 0x3b
mov byte [rsp + 0x5e], al
mov byte [rsp + 0x58], 0x57
call fcn.14002f340
mov eax, dword [str.xVU:]
lea rdx, [0x14006d6a1]
mov dword [rsp + 0x70], eax
lea rcx, [rsp + 0x70]
movzx eax, byte [0x14004b6d0]
xor byte [rsp + 0x71], 0x37
xor al, 0x3a
xor byte [rsp + 0x72], 0x38
xor byte [rsp + 0x73], 0x39
mov byte [rsp + 0x74], al
mov byte [rsp + 0x70], 0x4e
call fcn.14002f340
movzx eax, byte [0x14004b470]
lea rdx, [0x14006ce89]
movsd xmm0, qword [str.rKM_U_X_]
lea rcx, [rsp + 0x58]
movsd qword [rsp + 0x58], xmm0
xor al, 0x3e
xor byte [rsp + 0x59], 0x37
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
xor byte [rsp + 0x5c], 0x3a
xor byte [rsp + 0x5d], 0x3b
xor byte [rsp + 0x5e], 0x3c
xor byte [rsp + 0x5f], 0x3d
mov byte [rsp + 0x60], al
mov byte [rsp + 0x58], 0x44
call fcn.14002f340
movzx eax, byte [0x14004b6c8]
lea rdx, [0x14006d6a2]
movsd xmm0, qword [str.e_U_OSS_]
lea rcx, [rsp + 0x58]
movsd qword [rsp + 0x58], xmm0
xor al, 0x3e
xor byte [rsp + 0x59], 0x37
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
xor byte [rsp + 0x5c], 0x3a
xor byte [rsp + 0x5d], 0x3b
xor byte [rsp + 0x5e], 0x3c
xor byte [rsp + 0x5f], 0x3d
mov byte [rsp + 0x60], al
mov byte [rsp + 0x58], 0x53
call fcn.14002f340
mov eax, dword [0x14004b3c4]
lea rdx, [0x14006d6a0]
mov dword [rsp + 0x70], eax
lea rcx, [rsp + 0x70]
movzx eax, byte [0x14004b3c8]
xor byte [rsp + 0x71], 0x37
xor al, 0x3a
xor byte [rsp + 0x72], 0x38
xor byte [rsp + 0x73], 0x39
mov byte [rsp + 0x74], al
mov byte [rsp + 0x70], 0x4c
call fcn.14002f340
movaps xmm1, xmm10
xorps xmm0, xmm0
call fcn.140011f70
cmp byte [0x14004b3c3], bl
movsd xmm4, qword [0x14004b3b8]
mov ecx, dword [0x14004b3c0]
movsd qword [rsp + 0x40], xmm4
mov dword [rsp + 0x48], ecx
je 0x14003eaee
cmp edi, 2
jl 0x14003eaba
movdqa xmm1, xmm6
movd eax, xmm13
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm7
pmulld xmm0, xmm12
psubd xmm6, xmm0
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
andps xmm6, xmm11
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm0, dword [0x14004b3b8]
xorps xmm6, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm12
psubd xmm7, xmm0
movd xmm0, eax
andps xmm7, xmm11
packuswb xmm7, xmm7
packuswb xmm7, xmm7
paddb xmm7, xmm0
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
xorps xmm7, xmm1
movdqa xmm1, xmm8
pmuldq xmm0, xmm9
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movd dword [rsp + 0x44], xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm12
psubd xmm8, xmm0
movd xmm0, eax
andps xmm8, xmm11
packuswb xmm8, xmm8
packuswb xmm8, xmm8
paddb xmm8, xmm0
xorps xmm8, xmm1
movd dword [rsp + 0x48], xmm8
jmp 0x14003eaee
lea r8, [rsp + 0x40]
nop
mov eax, 0x2f684bdb
lea r8, [r8 + 1]
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x36
movzx eax, bl
inc ebx
sub al, cl
add al, 0x36
xor byte [r8 - 1], al
cmp ebx, 0xc
jl 0x14003eac0
lea r9, str.Bottom
lea rdx, [0x14006d690]
lea rcx, [rsp + 0x40]
jmp 0x14003fa9f
movzx ecx, word [0x14004b718]
movzx eax, byte [0x14004b71a]
movsd xmm0, qword [str.wU_UO]
xor al, 0x40
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x37
xor byte [rsp + 0x42], 0x38
xor byte [rsp + 0x43], 0x39
xor byte [rsp + 0x44], 0x3a
xor byte [rsp + 0x45], 0x3b
xor byte [rsp + 0x46], 0x3c
xor byte [rsp + 0x47], 0x3d
mov word [rsp + 0x48], cx
xor cl, 0x3e
xor byte [rsp + 0x49], 0x3f
mov byte [rsp + 0x48], cl
lea rcx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x41
mov byte [rsp + 0x4a], al
call fcn.14002db50
cmp byte [0x14004b6fd], bl
movsd xmm0, qword [str.sYY_V]
movzx eax, word [0x14004b6fc]
mov ecx, dword [0x14004b6f8]
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x4c], ax
mov dword [rsp + 0x48], ecx
je 0x14003ed23
mov r8d, ebx
cmp edi, 2
jl 0x14003ece0
movd eax, xmm13
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
movdqa xmm2, xmm7
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.sYY_V]
xorps xmm1, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm8
xorps xmm2, xmm1
punpckhdq xmm0, xmm8
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm8
pmuldq xmm0, xmm9
movdqa xmm2, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x36
add cl, r8b
inc r8d
xor byte [r9 - 1], cl
cmp r8d, 0xe
jl 0x14003ecf0
lea rdx, [0x14006cea0]
lea rcx, [rsp + 0x40]
call fcn.14002f340
cmp byte [0x14004b451], bl
movups xmm2, xmmword [0x14004b440]
movzx eax, word [0x14004b450]
mov word [rsp + 0x50], ax
movups xmmword [rsp + 0x40], xmm2
je 0x14003ef44
mov r8d, ebx
cmp edi, 2
jl 0x14003ef06
movdqa xmm3, xmmword [0x14004b960]
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd eax, xmm2
movdqa xmm2, xmm7
movd ecx, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm8
xorps xmm2, xmm1
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movd dword [rsp + 0x44], xmm2
movdqa xmm2, xmm8
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x48]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x48], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movd xmm1, dword [rsp + 0x4c]
psubd xmm3, xmm0
andps xmm3, xmm11
movd xmm0, ecx
packuswb xmm3, xmm3
mov r8d, 0x10
packuswb xmm3, xmm3
paddb xmm3, xmm0
xorps xmm3, xmm1
movd dword [rsp + 0x4c], xmm3
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x4bda12f7
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x36
add cl, r8b
inc r8d
xor byte [r9 - 1], cl
cmp r8d, 0x12
jl 0x14003ef11
lea rdx, [0x1400530a1]
lea rcx, [rsp + 0x40]
call fcn.14002f340
movzx eax, byte [0x14004b5c4]
mov r8d, ebx
movsd xmm0, qword [str.yYT_]
mov ecx, dword [0x14004b5c0]
mov byte [rsp + 0x4c], al
movsd qword [rsp + 0x40], xmm0
mov dword [rsp + 0x48], ecx
cmp edi, 2
jl 0x14003f0bd
movd eax, xmm13
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
movdqa xmm2, xmm7
pmuldq xmm0, xmm9
mov r8d, 0xc
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, eax
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, dword [str.yYT_]
xorps xmm1, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm8
xorps xmm2, xmm1
punpckhdq xmm0, xmm8
movd dword [rsp + 0x44], xmm2
movdqa xmm1, xmm8
pmuldq xmm0, xmm9
movdqa xmm2, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x36
add cl, r8b
inc r8d
xor byte [r9 - 1], cl
cmp r8d, 0xd
jl 0x14003f0d0
lea rdx, [0x1400530a0]
lea rcx, [rsp + 0x40]
call fcn.14002f340
cmp byte [0x14004b5a9], bl
movups xmm2, xmmword [0x14004b598]
movzx eax, word [0x14004b5a8]
mov word [rsp + 0x50], ax
movups xmmword [rsp + 0x40], xmm2
je 0x14003f324
mov r8d, ebx
cmp edi, 2
jl 0x14003f2e6
movdqa xmm3, xmmword [0x14004b960]
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd eax, xmm2
movdqa xmm2, xmm7
movd ecx, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm8
xorps xmm2, xmm1
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movd dword [rsp + 0x44], xmm2
movdqa xmm2, xmm8
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x48]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x48], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movd xmm1, dword [rsp + 0x4c]
psubd xmm3, xmm0
andps xmm3, xmm11
movd xmm0, ecx
packuswb xmm3, xmm3
mov r8d, 0x10
packuswb xmm3, xmm3
paddb xmm3, xmm0
xorps xmm3, xmm1
movd dword [rsp + 0x4c], xmm3
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
mov eax, 0x4bda12f7
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x36
add cl, r8b
inc r8d
xor byte [r9 - 1], cl
cmp r8d, 0x12
jl 0x14003f2f1
lea rdx, [0x14006ce88]
lea rcx, [rsp + 0x40]
call fcn.14002f340
cmp byte [0x14004b6b9], bl
movups xmm2, xmmword [0x14004b6a8]
movzx eax, word [0x14004b6b8]
mov word [rsp + 0x50], ax
movups xmmword [rsp + 0x40], xmm2
je 0x14003f553
mov r8d, ebx
cmp edi, 2
jl 0x14003f507
movdqa xmm3, xmmword [0x14004b960]
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd eax, xmm2
movdqa xmm2, xmm7
movd ecx, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm8
xorps xmm2, xmm1
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movd dword [rsp + 0x44], xmm2
movdqa xmm2, xmm8
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x48]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x48], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movd xmm1, dword [rsp + 0x4c]
psubd xmm3, xmm0
andps xmm3, xmm11
movd xmm0, ecx
packuswb xmm3, xmm3
mov r8d, 0x10
packuswb xmm3, xmm3
paddb xmm3, xmm0
xorps xmm3, xmm1
movd dword [rsp + 0x4c], xmm3
mov eax, r8d
lea r9, [rsp + 0x40]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x36
add cl, r8b
inc r8d
xor byte [r9 - 1], cl
cmp r8d, 0x12
jl 0x14003f520
lea rdx, [0x14006d6a9]
lea rcx, [rsp + 0x40]
call fcn.14002f340
movzx eax, byte [0x14004b4b0]
lea rdx, [0x14006d6a8]
movsd xmm0, qword [str.e_WN]
lea rcx, [rsp + 0x58]
movsd qword [rsp + 0x58], xmm0
xor al, 0x3e
xor byte [rsp + 0x59], 0x37
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
xor byte [rsp + 0x5c], 0x3a
xor byte [rsp + 0x5d], 0x3b
xor byte [rsp + 0x5e], 0x3c
xor byte [rsp + 0x5f], 0x3d
mov byte [rsp + 0x60], al
mov byte [rsp + 0x58], 0x53
call fcn.14002f340
cmp byte [0x14004b461], bl
movzx eax, word [0x14004b460]
movsd xmm0, qword [0x14004b458]
mov word [rsp + 0x48], ax
mov eax, dword [0x14004b5ec]
mov dword [rsp + 0x58], eax
movzx eax, word [0x14004b5f0]
mov word [rsp + 0x5c], ax
movsd qword [rsp + 0x40], xmm0
je 0x14003f622
xor byte [rsp + 0x41], 0x37
xor byte [rsp + 0x42], 0x38
xor byte [rsp + 0x43], 0x39
xor byte [rsp + 0x44], 0x3a
xor byte [rsp + 0x45], 0x3b
xor byte [rsp + 0x46], 0x3c
xor byte [rsp + 0x47], 0x3d
xor byte [rsp + 0x48], 0x3e
xor byte [rsp + 0x49], 0x3f
mov byte [rsp + 0x40], 0x46
xor byte [rsp + 0x59], 0x37
lea rax, [rsp + 0x40]
xor byte [rsp + 0x5a], 0x38
lea r9, [rsp + 0x70]
xor byte [rsp + 0x5b], 0x39
lea r8, [0x14006ce98]
xor byte [rsp + 0x5c], 0x3a
lea rcx, [rsp + 0x58]
xor byte [rsp + 0x5d], 0x3b
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
mov byte [rsp + 0x58], 0x23
mov dword [rbp - 0x80], 0x43960000
mov dword [rsp + 0x70], 0x42480000
call fcn.140030830
movzx eax, byte [0x14004b528]
mov r8d, ebx
mov byte [rsp + 0x68], al
movups xmm2, xmmword [str.eZWVNSRXMLzagmvF]
movups xmmword [rsp + 0x58], xmm2
cmp edi, 2
jl 0x14003f83d
movdqa xmm3, xmmword [0x14004b960]
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
movd eax, xmm2
movdqa xmm2, xmm7
movd ecx, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm6
pmulld xmm0, xmm12
psubd xmm1, xmm0
movd xmm0, ecx
andps xmm1, xmm11
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm0
movd xmm0, eax
xorps xmm1, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x58], xmm1
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x5c]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm8
xorps xmm2, xmm1
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movd dword [rsp + 0x5c], xmm2
movdqa xmm2, xmm8
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x60]
pmulld xmm0, xmm12
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm11
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movdqa xmm0, xmm3
xorps xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movd dword [rsp + 0x60], xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm12
movd xmm1, dword [rsp + 0x64]
psubd xmm3, xmm0
andps xmm3, xmm11
movd xmm0, ecx
packuswb xmm3, xmm3
mov r8d, 0x10
packuswb xmm3, xmm3
paddb xmm3, xmm0
xorps xmm3, xmm1
movd dword [rsp + 0x64], xmm3
mov eax, r8d
lea r9, [rsp + 0x58]
add r9, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x36
add cl, r8b
inc r8d
xor byte [r9 - 1], cl
cmp r8d, 0x11
jl 0x14003f850
movsd xmm0, qword [0x14004b5f8]
movzx eax, byte [0x14004b604]
mov ecx, dword [0x14004b600]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x4c], al
mov dword [rsp + 0x48], ecx
cmp edi, 2
jl 0x14003f9e0
movdqa xmm1, xmm6
movd eax, xmm13
punpckldq xmm1, xmm6
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
mov ebx, 0xc
pmuldq xmm0, xmm9
pmuldq xmm1, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm7
pmulld xmm0, xmm12
psubd xmm6, xmm0
punpckldq xmm1, xmm7
pmuldq xmm1, xmm9
andps xmm6, xmm11
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm0, dword [0x14004b5f8]
xorps xmm6, xmm0
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm9
movd dword [rsp + 0x40], xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x44]
pmulld xmm0, xmm12
psubd xmm7, xmm0
movd xmm0, eax
andps xmm7, xmm11
packuswb xmm7, xmm7
packuswb xmm7, xmm7
paddb xmm7, xmm0
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
xorps xmm7, xmm1
movdqa xmm1, xmm8
pmuldq xmm0, xmm9
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movd dword [rsp + 0x44], xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, ecx
pmulld xmm0, xmm12
psubd xmm8, xmm0
movd xmm0, eax
andps xmm8, xmm11
packuswb xmm8, xmm8
packuswb xmm8, xmm8
paddb xmm8, xmm0
xorps xmm8, xmm1
movd dword [rsp + 0x48], xmm8
mov eax, ebx
lea r8, [rsp + 0x40]
add r8, rax
nop word [rax + rax]
mov eax, 0x4bda12f7
lea r8, [r8 + 1]
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x36
add cl, bl
inc ebx
xor byte [r8 - 1], cl
cmp ebx, 0xd
jl 0x14003f9f0
lea rax, [rsp + 0x58]
mov dword [rsp + 0x70], 0x41200000
mov qword [rsp + 0x28], rax
lea r9, [rbp - 0x80]
lea rax, [rsp + 0x70]
mov dword [rbp - 0x80], 0x3f800000
lea r8, [0x14006ce9c]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x40]
call fcn.140030830
mov eax, dword [0x14004b704]
lea r9, str.Right_Mouse_Button
mov dword [rsp + 0x58], eax
lea rdx, [0x14006ce48]
movzx eax, word [0x14004b708]
lea rcx, [rsp + 0x58]
xor byte [rsp + 0x59], 0x37
xor byte [rsp + 0x5a], 0x38
xor byte [rsp + 0x5b], 0x39
mov word [rsp + 0x5c], ax
xor al, 0x3a
xor byte [rsp + 0x5d], 0x3b
mov byte [rsp + 0x5c], al
mov byte [rsp + 0x58], 0x23
mov dword [rsp + 0x20], 2
call fcn.140030620
call fcn.14000e7c0
movaps xmm12, xmmword [rsp + 0xa0]
movaps xmm11, xmmword [rsp + 0xb0]
movaps xmm10, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xe0]
movaps xmm7, xmmword [rsp + 0xf0]
movaps xmm13, xmmword [rsp + 0x90]
mov rdi, qword [rsp + 0x128]
mov rcx, qword [rbp - 0x78]
xor rcx, rsp
call fcn.140042810
mov rbx, qword [rsp + 0x130]
movaps xmm6, xmmword [rsp + 0x100]
add rsp, 0x110
pop rbp
ret