Function at 0x140036ac0
Capabilities:
Access peb ldr_data
Delete file
Encode data using xor
Execute command
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1290]
mov eax, 0x1390
call fcn.14004a390
sub rsp, rax
movaps xmmword [rsp + 0x1380], xmm6
movaps xmmword [rsp + 0x1370], xmm7
movaps xmmword [rsp + 0x1360], xmm8
mov rax, qword [0x14005e010]
xor rax, rsp
mov qword [rbp + 0x1250], rax
lea rcx, str.taskkill__f__im_HTTPDebuggerUI.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_HTTPDebuggerSvc.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_Ida64.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_OllyDbg.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_Dbg64.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_Dbg32.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_HTTPDebuggerPro__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_cheatengine___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_httpdebugger___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_processhacker___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_HTTPDebuggerUI.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_HTTPDebuggerSvc.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_HTTPDebuggerPro__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_cheatengine___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_httpdebugger___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_processhacker___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_x64dbg___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_x32dbg___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_ollydbg___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_fiddler___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_fiddler___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_charles___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_cheatengine___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_ida___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_httpdebugger___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_processhacker___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_HTTPDebuggerPro__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_HTTPDebuggerProSdk__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_KProcessHacker3__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_KProcessHacker2__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_KProcessHacker1__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_wireshark__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_HTTPDebuggerUI.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_HTTPDebuggerSvc.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_HTTPDebuggerPro__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_cheatengine___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_httpdebugger___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_processhacker___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_x64dbg___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_x32dbg___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_ollydbg___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_fiddler___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__FI__IMAGENAME_eq_die___IM___F__T__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_HTTPDebuggerSvc.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_HTTPDebugger.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.taskkill__f__im_FolderChangesView.exe__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_HttpDebuggerSdk__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, str.sc_stop_npf__nul_2_1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rdx, [0x1400274a0]
lea rcx, [rbp + 0x938]
call fcn.140042dc0
nop
lea rcx, [rbp + 0x938]
call fcn.140029ac0
nop
cmp dword [rbp + 0x940], 0
je 0x140036db8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
xorps xmm0, xmm0
movups xmmword [rbp + 0x1118], xmm0
lea rax, [rbp + 0xd30]
mov qword [rbp + 0x10d0], rax
movups xmm0, xmmword [0x14004e710]
movups xmmword [rbp + 0xd50], xmm0
movups xmm1, xmmword [0x14004e720]
movups xmmword [rbp + 0xd60], xmm1
movups xmm0, xmmword [0x14004e730]
movups xmmword [rbp + 0xd70], xmm0
movups xmm1, xmmword [0x14004e740]
movups xmmword [rbp + 0xd80], xmm1
movups xmm0, xmmword [0x14004e750]
movups xmmword [rbp + 0xd90], xmm0
mov eax, dword [0x14004e760]
mov dword [rbp + 0xda0], eax
xor r8d, r8d
lea ebx, [r8 + 4]
lea edi, [rbx + 0x1b]
mov r13d, dword [0x14005e018]
cmp r13d, 2
jl 0x140036f83
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, ebx
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, edi
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xd54]
mov edx, dword [rsp + 0x40]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x50
jl 0x140036e80
cmp r8d, 0x54
jge 0x140036fc0
movsxd rax, r8d
lea r9, [rbp + 0xd50]
add r9, rax
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x54
jl 0x140036f90
movzx edx, byte [rbp - 0x80]
lea rcx, [rbp + 0xd30]
call fcn.140028f30
nop
lea rax, [rbp + 0xd50]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140036fe0
lea rdx, [rbp + 0xd50]
lea rcx, [rbp + 0xd30]
call fcn.140028f50
nop
lea rcx, [rbp + 0x1050]
call fcn.1400269e0
nop
lea rdx, [rbp + 0xd30]
mov rcx, rax
call fcn.140027250
test al, al
je 0x140037025
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
lea rax, [rbp + 0xd10]
mov qword [rbp - 0x38], rax
movups xmm0, xmmword [str.ABGK]
movups xmmword [rbp + 0xdb0], xmm0
movups xmm1, xmmword [0x14004f590]
movups xmmword [rbp + 0xdc0], xmm1
movups xmm0, xmmword [0x14004f5a0]
movups xmmword [rbp + 0xdd0], xmm0
movups xmm1, xmmword [0x14004f5b0]
movups xmmword [rbp + 0xde0], xmm1
movups xmm0, xmmword [0x14004f5c0]
movups xmmword [rbp + 0xdf0], xmm0
movsd xmm0, qword [0x14004f5d0]
movsd qword [rbp + 0xe00], xmm0
cmp r13d, 2
jl 0x1400371cd
movdqa xmm5, xmmword [0x140058360]
xor edx, edx
movdqa xmm4, xmmword [0x140058410]
movd xmm6, ebx
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, edi
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xdb4]
mov r8d, dword [rsp + 0x40]
nop dword [rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x58
jl 0x1400370d0
jmp 0x140037210
lea r9, [rbp + 0xdb0]
xor r8d, r8d
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x58
jl 0x1400371e0
movzx edx, byte [rbp - 0x80]
lea rcx, [rbp + 0xd10]
call fcn.140028f30
nop
lea rax, [rbp + 0xdb0]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140037230
lea rdx, [rbp + 0xdb0]
lea rcx, [rbp + 0xd10]
call fcn.140028f50
nop
lea rcx, [rbp + 0x1070]
call fcn.1400269e0
nop
lea rdx, [rbp + 0xd10]
mov rcx, rax
call fcn.140027250
test al, al
je 0x140037275
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
lea rdx, [0x14002b5b0]
lea rcx, [rbp + 0x948]
call fcn.140042dc0
nop
lea rcx, [rbp + 0x948]
call fcn.140029ac0
nop
cmp dword [rbp + 0x950], 0
je 0x1400372a6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
movsd xmm0, qword [str.WZZXJ]
movsd qword [rsp + 0x58], xmm0
movzx eax, byte [0x14004f510]
mov byte [rsp + 0x60], al
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037346
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037346
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x93f31646
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037341
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037320
cmp r8d, 0x949c9647
je 0x14003734b
test r9d, r9d
jne 0x140037300
mov rax, qword [rax]
jmp 0x1400372d0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov byte [rsp + 0x58], 0x63
xor byte [rsp + 0x59], 0x35
xor byte [rsp + 0x5a], 0x36
xor byte [rsp + 0x5b], 0x37
xor byte [rsp + 0x5c], 0x38
xor byte [rsp + 0x5d], 0x39
xor byte [rsp + 0x5e], 0x3a
xor byte [rsp + 0x5f], 0x3b
xor byte [rsp + 0x60], 0x3c
lea rcx, [rsp + 0x58]
call rdx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037426
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037426
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0xbf4b156a
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037421
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037400
cmp r8d, 0xfc86895f
je 0x14003742b
test r9d, r9d
jne 0x1400373e0
mov rax, qword [rax]
jmp 0x1400373b0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov ecx, dword [rcx + rax*4]
add rcx, r10
call rcx
mov r12, rax
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax + rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1400374d6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400374d6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rax, [rbx + r9*4]
mov edx, dword [rax + r10]
add rdx, r10
mov r8d, 0xcfae802e
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x1400374d1
nop
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x1400374b0
cmp r8d, 0x3e9405bb
je 0x1400374db
test r9d, r9d
jne 0x140037490
mov rcx, qword [rcx]
jmp 0x140037460
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov ecx, dword [rcx + rax*4]
add rcx, r10
call rcx
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax + rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037586
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037586
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rax, [rbx + r9*4]
mov edx, dword [rax + r10]
add rdx, r10
mov r8d, 0xc12476eb
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140037581
nop
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x140037560
cmp r8d, 0xa995d1df
je 0x14003758b
test r9d, r9d
jne 0x140037540
mov rcx, qword [rcx]
jmp 0x140037510
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
lea rdx, [rbp + 0x1128]
mov rcx, rsi
call r8
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037646
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037646
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0xf48b2544
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037641
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037620
cmp r8d, 0xfac6f9b7
je 0x14003764b
test r9d, r9d
jne 0x140037600
mov rax, qword [rax]
jmp 0x1400375d0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 0xfffffff5
call rdx
mov r15, rax
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1400376f6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400376f6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rax, [r10 + r9*4]
mov edx, dword [rax + rbx]
add rdx, r10
mov r8d, 0x61ffde6a
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x1400376f1
nop dword [rax]
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x1400376d0
cmp r8d, 0x26c38191
je 0x1400376fb
test r9d, r9d
jne 0x1400376b0
mov rcx, qword [rcx]
jmp 0x140037680
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
lea rdx, [rbp + 0x10e0]
mov rcx, r15
call r8
movzx ecx, word [rbp + 0x10f0]
sub cx, word [rbp + 0x10ec]
inc cx
movzx eax, word [rbp + 0x10e0]
mov word [rbp + 0x10d0], ax
mov word [rbp + 0x10d2], cx
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1400377d6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400377d6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0xa0a200c9
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400377d1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400377b0
cmp r8d, 0x1c1695e4
je 0x1400377db
test r9d, r9d
jne 0x140037790
mov rax, qword [rax]
jmp 0x140037760
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 0xffffffec
mov rcx, r12
call r8
mov esi, eax
bts esi, 0x13
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037896
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037896
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x9fa1ff36
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037891
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037870
cmp r8d, 0x1f5f0c87
je 0x14003789b
test r9d, r9d
jne 0x140037850
mov rax, qword [rax]
jmp 0x140037820
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r9d, dword [rcx + rax*4]
add r9, r10
mov r8d, esi
mov edx, 0xffffffec
mov rcx, r12
call r9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x140037956
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037956
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r11 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r11
mov r8d, 0x72b246fd
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037951
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037930
cmp r8d, 0xdc5e2eec
je 0x14003795b
test r9d, r9d
jne 0x140037910
mov rax, qword [rax]
jmp 0x1400378e0
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
mov r9d, 2
mov r8b, 0xc8
xor edx, edx
mov rcx, r12
call r10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037a16
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037a16
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x5a3e8e1f
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037a11
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400379f0
cmp r8d, 0xfbe22512
je 0x140037a1b
test r9d, r9d
jne 0x1400379d0
mov rax, qword [rax]
jmp 0x1400379a0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov ecx, dword [rcx + rax*4]
add rcx, r10
call rcx
mov r14, rax
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax + rax]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037ac6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037ac6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rax, [r10 + r9*4]
mov edx, dword [rax + rbx]
add rdx, r10
mov r8d, 0x2017e338
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140037ac1
nop dword [rax]
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x140037aa0
cmp r8d, 0xaed18d45
je 0x140037acb
test r9d, r9d
jne 0x140037a80
mov rcx, qword [rcx]
jmp 0x140037a50
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 0xfffffff0
mov rcx, r14
call r8
mov esi, eax
and esi, 0xfff8ffff
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037b86
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037b86
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x2117e4cb
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037b81
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037b60
cmp r8d, 0xc5db4712
je 0x140037b8b
test r9d, r9d
jne 0x140037b40
mov rax, qword [rax]
jmp 0x140037b10
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r9d, dword [rcx + rax*4]
add r9, r10
mov r8d, esi
mov edx, 0xfffffff0
mov rcx, r14
call r9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037c46
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037c46
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x199df63
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037c41
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037c20
cmp r8d, 0x1996430d
je 0x140037c4b
test r9d, r9d
jne 0x140037c00
mov rax, qword [rax]
jmp 0x140037bd0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, dword [rbp + 0x10d0]
mov rcx, r15
call r8
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x140037cf6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037cf6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r11]
add rdx, r11
mov r8d, 0xda3d7f8e
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037cf1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037cd0
cmp r8d, 0xad5e1ac0
je 0x140037cfb
test r9d, r9d
jne 0x140037cb0
mov rax, qword [rax]
jmp 0x140037c80
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
mov dword [rsp + 0x30], 0x63
xor r14d, r14d
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
lea rdx, [r14 - 1]
mov rcx, r12
call r10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037dc6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037dc6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x8f366f61
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037dc1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037da0
cmp r8d, 0xa75623fc
je 0x140037dcb
test r9d, r9d
jne 0x140037d80
mov rax, qword [rax]
jmp 0x140037d50
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 0xfffffff0
mov rcx, r12
call r8
mov esi, eax
btr esi, 0x11
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140037e86
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037e86
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x2b875abd
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037e81
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037e60
cmp r8d, 0x386c6944
je 0x140037e8b
test r9d, r9d
jne 0x140037e40
mov rax, qword [rax]
jmp 0x140037e10
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r9d, dword [rcx + rax*4]
add r9, r10
mov r8d, esi
mov edx, 0xfffffff0
mov rcx, r12
call r9
mov rcx, qword [0x14005fef0]
call fcn.140016870
mov rcx, qword [0x14005fef0]
call fcn.140016a90
movups xmm0, xmmword [0x14004e000]
movups xmmword [rbp + 0xa18], xmm0
movups xmm1, xmmword [0x14004e010]
movups xmmword [rbp + 0xa28], xmm1
movzx eax, byte [0x14004e020]
mov byte [rbp + 0xa38], al
mov r8d, r14d
mov r15d, 4
lea r12d, [r15 + 0x1b]
cmp r13d, 2
jl 0x140038053
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xa1c]
mov edx, dword [rsp + 0x40]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x140037f50
cmp r8d, 0x21
jge 0x140038090
movsxd rax, r8d
lea r9, [rbp + 0xa18]
add r9, rax
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x21
jl 0x140038060
lea rdx, [rbp + 0xa18]
lea rcx, [rbp + 0x1090]
call fcn.140028630
nop
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0xf10]
call fcn.140042130
nop
lea rcx, [rbp + 0xf10]
call fcn.14002a5d0
movzx ebx, al
lea rcx, [rbp + 0xf10]
call fcn.140029c50
nop
lea rcx, [rbp + 0x1090]
call fcn.1400285c0
test bl, bl
je 0x140038379
lea rcx, str.color_5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
movups xmm0, xmmword [str.dGSAQVOH]
movups xmmword [rbp + 0xf0], xmm0
movsd xmm0, qword [0x14004e218]
movsd qword [rbp + 0x100], xmm0
movzx eax, byte [0x14004e220]
mov byte [rbp + 0x108], al
mov r8d, r14d
cmp r13d, 2
jl 0x140038273
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xf4]
mov edx, dword [rsp + 0x40]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x140038170
cmp r8d, 0x19
jge 0x1400382b0
movsxd rax, r8d
lea r9, [rbp + 0xf0]
add r9, rax
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x19
jl 0x140038280
lea rdx, [rbp + 0xf0]
lea rcx, [rbp + 0x1010]
call fcn.140028630
mov rcx, rax
call fcn.14002a6f0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140038356
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038356
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x8533b26f
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038351
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038330
cmp r8d, 0x995c3cb2
je 0x14003835b
test r9d, r9d
jne 0x140038310
mov rax, qword [rax]
jmp 0x1400382e0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
mov ecx, 0x5dc
jmp 0x140038d34
mov eax, dword [0x14004f048]
mov dword [rsp + 0x70], eax
movzx eax, word [0x14004f04c]
mov word [rsp + 0x74], ax
mov byte [rsp + 0x70], 0x4b
xor byte [rsp + 0x71], 0x35
xor byte [rsp + 0x72], 0x36
xor byte [rsp + 0x73], 0x37
xor al, 0x38
mov byte [rsp + 0x74], al
xor byte [rsp + 0x75], 0x39
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x1030]
call fcn.140028630
mov rcx, rax
call fcn.14002a6f0
lea rdx, [0x14005f448]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.140042190
movups xmm0, xmmword [0x14004e588]
movups xmmword [rbp + 0x10], xmm0
movzx eax, word [0x14004e598]
mov word [rbp + 0x20], ax
movzx eax, byte [0x14004e59a]
mov byte [rbp + 0x22], al
mov r8d, r14d
cmp r13d, 2
jl 0x140038543
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x14]
mov edx, dword [rsp + 0x40]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140038440
cmp r8d, 0x13
jge 0x140038580
movsxd rax, r8d
lea r9, [rbp + 0x10]
add r9, rax
nop dword [rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x140038550
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0xff0]
call fcn.140028630
mov rdx, rax
lea rcx, [0x14005f448]
call fcn.140042b80
movzx ebx, al
lea rcx, [rbp + 0xff0]
call fcn.1400285c0
test bl, bl
je 0x140038ab8
movsd xmm0, qword [str.g_UT_JI]
movsd qword [rbp - 0x78], xmm0
movzx eax, byte [0x14004f550]
mov byte [rbp - 0x78], 0x53
xor byte [rbp - 0x77], 0x35
xor byte [rbp - 0x76], 0x36
xor byte [rbp - 0x75], 0x37
xor byte [rbp - 0x74], 0x38
xor byte [rbp - 0x73], 0x39
xor byte [rbp - 0x72], 0x3a
xor byte [rbp - 0x71], 0x3b
xor al, 0x3c
mov byte [rbp - 0x70], al
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x10b0]
call fcn.140028630
mov rcx, rax
call fcn.14002aa80
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140038696
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038696
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x3a17e717
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038691
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038670
cmp r8d, 0xaf73d3da
je 0x14003869b
test r9d, r9d
jne 0x140038650
mov rax, qword [rax]
jmp 0x140038620
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 0x5dc
call rdx
mov eax, dword [str.WYE7]
mov dword [rbp - 0x64], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140038756
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038756
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x762b5748
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038751
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038730
cmp r8d, 0x3f5a2049
je 0x14003875b
test r9d, r9d
jne 0x140038710
mov rax, qword [rax]
jmp 0x1400386e0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r11d, dword [rcx + rax*4]
add r11, r10
cmp r13d, 2
jl 0x140038803
movdqa xmm3, xmmword [0x140058360]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140058410]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140058410]
shufps xmm2, xmm0, 0xdd
movd xmm0, r15d
psrad xmm2, xmm0
movd xmm0, r12d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1400583a0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1400583f0]
movd xmm0, dword [rbp - 0x64]
xorps xmm2, xmm0
movd dword [rbp - 0x64], xmm2
jmp 0x140038840
lea r9, [rbp - 0x64]
mov r8d, r14d
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140038810
lea rcx, [rbp - 0x64]
call r11
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x1140]
call sub.VCRUNTIME140.dll_memset
mov edx, 1
lea rcx, [rbp + 0x1140]
call fcn.140041ac0
nop
movups xmm0, xmmword [0x14004e000]
movups xmmword [rbp + 0xa40], xmm0
movups xmm1, xmmword [0x14004e010]
movups xmmword [rbp + 0xa50], xmm1
movzx eax, byte [0x14004e020]
mov byte [rbp + 0xa60], al
mov r8d, r14d
cmp r13d, 2
jl 0x1400389e3
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xa44]
mov edx, dword [rsp + 0x40]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x1400388e0
cmp r8d, 0x21
jge 0x140038a20
movsxd rax, r8d
lea r9, [rbp + 0xa40]
add r9, rax
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x21
jl 0x1400389f0
mov r9d, 0x40
lea r8d, [r9 - 0x3e]
lea rdx, [rbp + 0xa40]
lea rcx, [rbp + 0x1140]
call fcn.140041a10
lea rdx, [0x14005f448]
lea rcx, [rbp + 0x1140]
call fcn.140042470
lea rcx, [rbp + 0x1140]
call fcn.1400419d0
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
lea rdx, [rbp + 0x10d8]
call qword [sym.imp.KERNEL32.dll_GetConsoleCursorInfo]
mov dword [rbp + 0x10dc], r14d
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
lea rdx, [rbp + 0x10d8]
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorInfo]
nop
lea rcx, [rbp + 0x11e8]
call fcn.140041a60
lea rcx, [rbp + 0x11e8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x140038d40
movups xmm0, xmmword [str.cGYY_]
movups xmmword [rbp + 0x9f0], xmm0
movups xmm1, xmmword [0x14004f148]
movups xmmword [rbp + 0xa00], xmm1
movzx eax, byte [0x14004f158]
mov byte [rbp + 0xa10], al
mov r8d, r14d
cmp r13d, 2
jl 0x140038c33
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x9f4]
mov edx, dword [rsp + 0x40]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x140038b30
cmp r8d, 0x21
jge 0x140038c70
movsxd rax, r8d
lea r9, [rbp + 0x9f0]
add r9, rax
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x21
jl 0x140038c40
lea rdx, [rbp + 0x9f0]
lea rcx, [rbp + 0xfd0]
call fcn.140028630
mov rcx, rax
call fcn.14002ae10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140038d16
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038d16
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x7f56b8d4
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038d11
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038cf0
cmp r8d, 0x54924d97
je 0x140038d1b
test r9d, r9d
jne 0x140038cd0
mov rax, qword [rax]
jmp 0x140038ca0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
mov ecx, 0xffffffff
add rdx, r10
call rdx
nop dword [rax]
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rsi, rax
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140038dd6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038dd6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rax, [rbx + r9*4]
mov edx, dword [rax + r10]
add rdx, r10
mov r8d, 0x7f88ec1b
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140038dd1
nop
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x140038db0
cmp r8d, 0x51a4b107
je 0x140038ddb
test r9d, r9d
jne 0x140038d90
mov rcx, qword [rcx]
jmp 0x140038d60
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r8d, dword [rcx + rax*4]
add r8, r10
mov edx, 0xd
mov rcx, rsi
call r8
mov eax, dword [str.WYE7]
mov dword [rbp - 0x68], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140038e96
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038e96
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0xc39a2a4d
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038e91
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038e70
cmp r8d, 0xa104c2e4
je 0x140038e9b
test r9d, r9d
jne 0x140038e50
mov rax, qword [rax]
jmp 0x140038e20
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r11d, dword [rcx + rax*4]
add r11, r10
cmp r13d, 2
jl 0x140038f43
movdqa xmm3, xmmword [0x140058360]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140058410]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140058410]
shufps xmm2, xmm0, 0xdd
movd xmm0, r15d
psrad xmm2, xmm0
movd xmm0, r12d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1400583a0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1400583f0]
movd xmm0, dword [rbp - 0x68]
xorps xmm2, xmm0
movd dword [rbp - 0x68], xmm2
jmp 0x140038f80
lea r9, [rbp - 0x68]
mov r8d, r14d
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140038f50
lea rcx, [rbp - 0x68]
call r11
mov eax, dword [str.___8]
mov dword [rsp + 0x68], eax
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004e028]
mov byte [rsp + 0x68], 0xa
xor byte [rsp + 0x69], 0x35
xor byte [rsp + 0x6a], 0x36
xor byte [rsp + 0x6b], 0x37
xor al, 0x38
mov byte [rsp + 0x6c], al
lea rdx, [rsp + 0x68]
call fcn.140041f60
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movups xmm0, xmmword [0x14004f670]
movups xmmword [rbp + 0xe10], xmm0
movups xmm1, xmmword [0x14004f680]
movups xmmword [rbp + 0xe20], xmm1
movups xmm0, xmmword [0x14004f690]
movups xmmword [rbp + 0xe30], xmm0
movups xmm1, xmmword [0x14004f6a0]
movups xmmword [rbp + 0xe40], xmm1
movups xmm0, xmmword [0x14004f6b0]
movups xmmword [rbp + 0xe50], xmm0
movups xmm1, xmmword [0x14004f6c0]
movups xmmword [rbp + 0xe60], xmm1
mov eax, dword [0x14004f6d0]
mov dword [rbp + 0xe70], eax
mov r8d, r14d
cmp r13d, 2
jl 0x140039185
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0xe14]
mov r9d, dword [rsp + 0x40]
nop dword [rax]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add r8d, 8
lea rdx, [rdx + 8]
cmp r8d, 0x60
jl 0x140039080
cmp r8d, 0x64
jge 0x1400391d0
movsxd rax, r8d
lea r9, [rbp + 0xe10]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x64
jl 0x1400391a0
lea rdx, [rbp + 0xe10]
mov rcx, r10
call fcn.140041f60
lea rdx, [0x140042490]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
movups xmm0, xmmword [0x14004de50]
movups xmmword [rbp + 0x850], xmm0
mov eax, dword [0x14004deb8]
movups xmm0, xmmword [0x14004de70]
movups xmm1, xmmword [0x14004de60]
mov dword [rbp + 0x8b8], eax
movups xmmword [rbp + 0x870], xmm0
movups xmmword [rbp + 0x860], xmm1
movzx eax, word [0x14004debc]
movups xmm0, xmmword [0x14004de90]
movups xmm1, xmmword [0x14004de80]
mov word [rbp + 0x8bc], ax
movups xmmword [rbp + 0x890], xmm0
movups xmmword [rbp + 0x880], xmm1
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004debe]
movsd xmm0, qword [0x14004deb0]
movups xmm1, xmmword [0x14004dea0]
mov r10, r8
mov byte [rbp + 0x8be], al
movsd qword [rbp + 0x8b0], xmm0
movups xmmword [rbp + 0x8a0], xmm1
mov ecx, r14d
cmp r13d, 2
jl 0x1400393d5
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x854]
mov r9d, dword [rsp + 0x40]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x68
jl 0x1400392d0
cmp ecx, 0x6f
jl 0x1400393d5
mov rcx, r8
jmp 0x14003941f
movsxd rax, ecx
lea r8, [rbp + 0x850]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x34
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x6f
jl 0x1400393f0
mov rcx, r10
lea rdx, [rbp + 0x850]
call fcn.140041f60
lea rdx, [0x140042490]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, dword [0x14004f130]
movups xmm0, xmmword [0x14004f0e0]
mov dword [rbp + 0x7e0], eax
movups xmmword [rbp + 0x790], xmm0
movzx eax, word [0x14004f134]
movups xmm0, xmmword [0x14004f100]
movups xmm1, xmmword [0x14004f0f0]
mov word [rbp + 0x7e4], ax
movups xmmword [rbp + 0x7b0], xmm0
movups xmmword [rbp + 0x7a0], xmm1
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004f136]
movups xmm0, xmmword [0x14004f120]
movups xmm1, xmmword [0x14004f110]
mov r10, r8
mov byte [rbp + 0x7e6], al
movups xmmword [rbp + 0x7d0], xmm0
movups xmmword [rbp + 0x7c0], xmm1
mov ecx, r14d
cmp r13d, 2
jl 0x140039605
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x794]
mov r9d, dword [rsp + 0x40]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x50
jl 0x140039500
cmp ecx, 0x57
jl 0x140039605
mov rcx, r8
jmp 0x14003964f
movsxd rax, ecx
lea r8, [rbp + 0x790]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x34
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x57
jl 0x140039620
mov rcx, r10
lea rdx, [rbp + 0x790]
call fcn.140041f60
lea rdx, [0x140042490]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, dword [0x14004dda0]
movups xmm0, xmmword [0x14004dd50]
mov dword [rbp + 0x840], eax
movups xmmword [rbp + 0x7f0], xmm0
movzx eax, word [0x14004dda4]
movups xmm0, xmmword [0x14004dd70]
movups xmm1, xmmword [0x14004dd60]
mov word [rbp + 0x844], ax
movups xmmword [rbp + 0x810], xmm0
movups xmmword [rbp + 0x800], xmm1
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004dda6]
movups xmm0, xmmword [0x14004dd90]
movups xmm1, xmmword [0x14004dd80]
mov r10, r8
mov byte [rbp + 0x846], al
movups xmmword [rbp + 0x830], xmm0
movups xmmword [rbp + 0x820], xmm1
mov ecx, r14d
cmp r13d, 2
jl 0x140039835
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x7f4]
mov r9d, dword [rsp + 0x40]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x50
jl 0x140039730
cmp ecx, 0x57
jl 0x140039835
mov rcx, r8
jmp 0x14003987f
movsxd rax, ecx
lea r8, [rbp + 0x7f0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x34
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x57
jl 0x140039850
mov rcx, r10
lea rdx, [rbp + 0x7f0]
call fcn.140041f60
lea rdx, [0x140042490]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, dword [0x14004e460]
movups xmm0, xmmword [0x14004e410]
mov dword [rbp + 0x180], eax
movups xmmword [rbp + 0x130], xmm0
movzx eax, word [0x14004e464]
movups xmm0, xmmword [0x14004e430]
movups xmm1, xmmword [0x14004e420]
mov word [rbp + 0x184], ax
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x140], xmm1
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004e466]
movups xmm0, xmmword [0x14004e450]
movups xmm1, xmmword [0x14004e440]
mov r10, r8
mov byte [rbp + 0x186], al
movups xmmword [rbp + 0x170], xmm0
movups xmmword [rbp + 0x160], xmm1
mov ecx, r14d
cmp r13d, 2
jl 0x140039a65
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x134]
mov r9d, dword [rsp + 0x40]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x50
jl 0x140039960
cmp ecx, 0x57
jl 0x140039a65
mov rcx, r8
jmp 0x140039aaf
movsxd rax, ecx
lea r8, [rbp + 0x130]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x34
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x57
jl 0x140039a80
mov rcx, r10
lea rdx, [rbp + 0x130]
call fcn.140041f60
lea rdx, [0x140042490]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, dword [0x14004dda0]
movups xmm0, xmmword [0x14004dd50]
mov dword [rbp + 0x1e0], eax
movups xmmword [rbp + 0x190], xmm0
movzx eax, word [0x14004dda4]
movups xmm0, xmmword [0x14004dd70]
movups xmm1, xmmword [0x14004dd60]
mov word [rbp + 0x1e4], ax
movups xmmword [rbp + 0x1b0], xmm0
movups xmmword [rbp + 0x1a0], xmm1
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004dda6]
movups xmm0, xmmword [0x14004dd90]
movups xmm1, xmmword [0x14004dd80]
mov r10, r8
mov byte [rbp + 0x1e6], al
movups xmmword [rbp + 0x1d0], xmm0
movups xmmword [rbp + 0x1c0], xmm1
mov ecx, r14d
cmp r13d, 2
jl 0x140039c95
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x194]
mov r9d, dword [rsp + 0x40]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x50
jl 0x140039b90
cmp ecx, 0x57
jl 0x140039c95
mov rcx, r8
jmp 0x140039cdf
movsxd rax, ecx
lea r8, [rbp + 0x190]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x34
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x57
jl 0x140039cb0
mov rcx, r10
lea rdx, [rbp + 0x190]
call fcn.140041f60
lea rdx, [0x140042490]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, dword [0x14004e400]
movups xmm0, xmmword [0x14004e3b0]
mov dword [rbp + 0x240], eax
movups xmmword [rbp + 0x1f0], xmm0
movzx eax, word [0x14004e404]
movups xmm0, xmmword [0x14004e3d0]
movups xmm1, xmmword [0x14004e3c0]
mov word [rbp + 0x244], ax
movups xmmword [rbp + 0x210], xmm0
movups xmmword [rbp + 0x200], xmm1
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004e406]
movups xmm0, xmmword [0x14004e3f0]
movups xmm1, xmmword [0x14004e3e0]
mov r10, r8
mov byte [rbp + 0x246], al
movups xmmword [rbp + 0x230], xmm0
movups xmmword [rbp + 0x220], xmm1
mov ecx, r14d
cmp r13d, 2
jl 0x140039ec5
movdqa xmm5, xmmword [0x140058360]
movdqa xmm4, xmmword [0x140058410]
movd xmm6, r15d
movdqa xmm7, xmmword [0x1400583a0]
movd xmm8, r12d
movdqa xmm0, xmmword [0x1400583f0]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x1f4]
mov r9d, dword [rsp + 0x40]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400583d0]
packuswb xmm2, xmm2
movd xmm0, r9d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x50
jl 0x140039dc0
movsxd rax, ecx
lea r8, [rbp + 0x1f0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x34
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x57
jl 0x140039ee0