Function at 0x140004d90
Capabilities:
Access peb ldr_data
Authenticate hmac
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports
Set console window title

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x9e8]
sub rsp, 0xac0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1400bd040]
xor rax, rsp
mov qword [rbp + 0x9a8], rax
xor r15d, r15d
lea rcx, str.main
call qword [sym.imp.VMProtectSDK64.dll_VMProtectBeginUltra]
mov rcx, qword [0x1401cbb98]
call fcn.14002a310
lea r13, [r15 - 1]
mov esi, dword [0x1400bd088]
test al, al
jne 0x140005b1a
xor edx, edx
lea rcx, [0x1401cbb58]
call fcn.14000cf20
xor edx, edx
lea rcx, [0x1401cbb78]
call fcn.14000cf20
movups xmm0, xmmword [str.ZZASEVXVeZWS53C]
movups xmmword [rbp + 0x28], xmm0
movzx eax, byte [0x14009a198]
mov byte [rbp + 0x38], al
mov r8d, r15d
cmp esi, 2
jl 0x140004f75
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x2c]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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 0x140004e70
cmp r8d, 0x11
jge 0x140004fb0
movsxd rax, r8d
lea r9, [rbp + 0x28]
add r9, rax
nop
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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140004f80
movzx edx, byte [rsp + 0x31]
lea rcx, [rbp + 0x278]
call fcn.14000e810
nop
lea rax, [rbp + 0x28]
mov r8, r13
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140004fd0
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x278]
call fcn.14000e830
nop
movups xmm0, xmmword [str.h_GWT_d]
movups xmmword [rbp + 0x320], xmm0
movups xmm1, xmmword [0x14009ae90]
movups xmmword [rbp + 0x330], xmm1
movups xmm0, xmmword [0x14009aea0]
movups xmmword [rbp + 0x340], xmm0
movups xmm1, xmmword [0x14009aeb0]
movups xmmword [rbp + 0x350], xmm1
movups xmm0, xmmword [0x14009aec0]
movups xmmword [rbp + 0x360], xmm0
movups xmm1, xmmword [0x14009aed0]
movups xmmword [rbp + 0x370], xmm1
movups xmm0, xmmword [0x14009aee0]
movups xmmword [rbp + 0x380], xmm0
movups xmm1, xmmword [0x14009aef0]
movups xmmword [rbp + 0x390], xmm1
mov eax, dword [0x14009af00]
mov dword [rbp + 0x3a0], eax
mov r8d, r15d
cmp esi, 2
jl 0x1400051bb
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x324]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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, 0x80
jl 0x1400050b0
cmp r8d, 0x84
jge 0x140005203
movsxd rax, r8d
lea r9, [rbp + 0x320]
add r9, rax
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x84
jl 0x1400051d0
movzx edx, byte [rsp + 0x31]
lea rcx, [rbp + 0x298]
call fcn.14000e810
nop
lea rax, [rbp + 0x320]
mov r8, r13
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140005220
lea rdx, [rbp + 0x320]
lea rcx, [rbp + 0x298]
call fcn.14000e830
nop
lea r8, [rbp + 0x278]
lea rdx, [rbp + 0x298]
lea rcx, [0x1401cba30]
call fcn.1400031d0
nop
lea rcx, [rbp + 0x298]
call fcn.14000cec0
nop
lea rcx, [rbp + 0x278]
call fcn.14000cec0
mov byte [rbp + 0x1c], 0
mov rbx, qword [rbp + 0x18]
shr rbx, 0x20
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x920], xmm0
mov qword [rbp + 0x930], rax
lea rdx, [rbp + 0x9e8]
lea rcx, [rbp + 0x920]
call fcn.140003ac0
nop
test bl, bl
je 0x1400052cf
movsxd rax, dword [rbp + 0x18]
mov qword [rbp + 0xc8], rax
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x1b0]
call fcn.14000de60
mov rcx, rax
call fcn.140012690
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 0x140005356
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005356
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, 0x68c37d83
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005351
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140005330
cmp r8d, 0xb890693b
je 0x14000535b
test r9d, r9d
jne 0x140005310
mov rax, qword [rax]
jmp 0x1400052e0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r14d, dword [rcx + rax*4]
add r14, r10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140005406
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005406
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, 0x6ac380a9
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005401
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 0x1400053e0
cmp r8d, 0xe4cdbeaa
je 0x14000540b
test r9d, r9d
jne 0x1400053c0
mov rax, qword [rax]
jmp 0x140005390
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 esi, eax
mov eax, 0x80010003
imul esi
add edx, esi
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub esi, 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 0x1400054d6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400054d6
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, 0x67c37bf0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400054d1
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 0x1400054b0
cmp r8d, 0xa8ff70d6
je 0x1400054db
test r9d, r9d
jne 0x140005490
mov rax, qword [rax]
jmp 0x140005460
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 edx, esi
mov rcx, rax
call r14
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 0x140005586
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005586
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, 0x9428489a
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005581
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 0x140005560
cmp r8d, 0x5d1a4111
je 0x14000558b
test r9d, r9d
jne 0x140005540
mov rax, qword [rax]
jmp 0x140005510
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 r8d, eax
mov eax, 0x80010003
imul r8d
add edx, r8d
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x7fff
sub r8d, ecx
mov ecx, r8d
int 0x29
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 0x140005656
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005656
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, 0x11253bca
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005651
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 0x140005630
cmp r8d, 0xa2d2c0f
je 0x14000565b
test r9d, r9d
jne 0x140005610
mov rax, qword [rax]
jmp 0x1400055e0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x140005706
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005706
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, 0x12253d5d
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005701
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 0x1400056e0
cmp r8d, 0x3e2f085e
je 0x14000570b
test r9d, r9d
jne 0x1400056c0
mov rax, qword [rax]
jmp 0x140005690
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x1400057d6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400057d6
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, 0x122e403
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400057d1
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 0x1400057b0
cmp r8d, 0xebfbb833
je 0x1400057db
test r9d, r9d
jne 0x140005790
mov rax, qword [rax]
jmp 0x140005760
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x140005886
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005886
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, 0x22e270
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005881
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140005860
cmp r8d, 0x73c466cf
je 0x14000588b
test r9d, r9d
jne 0x140005840
mov rax, qword [rax]
jmp 0x140005810
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140005956
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005956
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, 0x920b204
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005951
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140005930
cmp r8d, 0x222f1801
je 0x14000595b
test r9d, r9d
jne 0x140005910
mov rax, qword [rax]
jmp 0x1400058e0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x140005a06
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005a06
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, 0xa20b397
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005a01
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400059e0
cmp r8d, 0x56a3f888
je 0x140005a0b
test r9d, r9d
jne 0x1400059c0
mov rax, qword [rax]
jmp 0x140005990
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140005ad6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005ad6
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, 0x9dcaa1a0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005ad1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140005ab0
cmp r8d, 0x3caa84a2
je 0x140005adb
test r9d, r9d
jne 0x140005a90
mov rax, qword [rax]
jmp 0x140005a60
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
nop
mov rcx, qword [rbp + 0x920]
xor rcx, qword [rbp + 0x928]
mov qword [rbp + 0x920], rcx
mov rax, qword [rbp + 0x930]
mov qword [rax], rcx
mov esi, dword [0x1400bd088]
mov eax, dword [0x14009a9d8]
mov dword [rbp + 0x60], eax
movzx eax, word [0x14009a9dc]
mov word [rbp + 0x64], ax
movzx eax, byte [0x14009a9de]
movups xmm1, xmmword [0x14009a9c8]
movups xmm0, xmmword [0x14009a9b8]
mov byte [rbp + 0x66], al
movups xmmword [rbp + 0x50], xmm1
movups xmmword [rbp + 0x40], xmm0
mov r8d, r15d
cmp esi, 2
jl 0x140005c95
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x44]
mov edx, dword [rsp + 0x40]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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 0x140005b90
cmp r8d, 0x27
jge 0x140005cd0
movsxd rax, r8d
lea r9, [rbp + 0x40]
add r9, rax
nop
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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x27
jl 0x140005ca0
lea rcx, [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
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 0x140005d66
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140005d66
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, 0x387b1821
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140005d61
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 0x140005d40
cmp r8d, 0x6d85614b
je 0x140005d6b
test r9d, r9d
jne 0x140005d20
mov rax, qword [rax]
jmp 0x140005cf0
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
movsd xmm0, qword [str.GFTUR]
movsd qword [rbp - 0x18], xmm0
mov eax, dword [0x14009ae50]
mov dword [rbp - 0x10], eax
movzx eax, word [0x14009ae54]
mov word [rbp - 0xc], ax
movzx eax, byte [0x14009ae56]
mov byte [rbp - 0xa], al
mov r8d, r15d
cmp esi, 2
jl 0x140005eb9
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm2, xmmword [0x1400abcd0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
mov eax, dword [0x1400abe70]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.GFTUR]
xorps xmm2, xmm0
movd dword [rbp - 0x18], xmm2
movdqa xmm3, xmmword [0x1400abd70]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x14]
xorps xmm2, xmm1
movd dword [rbp - 0x14], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x18]
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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x140005ed0
lea rcx, [rbp - 0x18]
call r11
mov r12, rax
test rax, rax
jne 0x140006456
lea rcx, [0x1401cbb58]
call fcn.14000b500
lea rcx, [0x1401cbb78]
call fcn.14000b500
lea rdx, [rbp + 0x760]
lea rcx, [rbp - 0x60]
call fcn.14000a290
mov r10, rax
cmp byte [rax + 0x10], r12b
je 0x1400060c0
mov r8d, r15d
cmp esi, 2
jl 0x140006086
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140005f81
cmp r8d, 0x11
jge 0x1400060c0
movsxd r9, r8d
add r9, r10
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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140006090
mov rdx, r10
lea rcx, [rbp + 0x3d0]
call fcn.14000b6e0
nop
lea rdx, [rbp + 0x8e8]
lea rcx, [rbp - 0x5f]
call fcn.14000a240
mov r10, rax
cmp byte [rax + 0x36], 0
je 0x140006270
mov r8d, r15d
cmp esi, 2
jl 0x140006235
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x30
jl 0x140006130
cmp r8d, 0x37
jge 0x140006270
movsxd r9, r8d
add r9, r10
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x37
jl 0x140006240
mov rdx, r10
lea rcx, [rbp + 0x530]
call fcn.14000b6e0
nop
lea r8, [rbp + 0x3d0]
lea rdx, [rbp + 0x530]
lea rcx, [0x1401cba30]
call fcn.1400031d0
nop
lea rcx, [rbp + 0x530]
call fcn.14000b520
nop
lea rcx, [rbp + 0x3d0]
call fcn.14000b520
lea rdx, [rbp + 0x8b0]
lea rcx, [rbp - 0x5e]
call fcn.14000a240
mov r9, rax
cmp byte [rax + 0x36], 0
je 0x14000a1a8
cmp esi, 2
jl 0x140006419
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
nop word [rax + rax]
movd xmm2, r15d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r15 + 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r15d, 8
lea rcx, [rcx + 8]
cmp r15d, 0x30
jl 0x140006310
cmp r15d, 0x37
jge 0x14000a1a8
movsxd r8, r15d
add r8, r9
nop
mov eax, 0x4bda12f7
imul r15d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r15b
sub al, cl
add al, 0x33
xor byte [r8], al
inc r15d
lea r8, [r8 + 1]
cmp r15d, 0x37
jge 0x14000a1a8
jmp 0x140006420
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 0x1400064e6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400064e6
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, 0x6bc31782
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400064e1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400064c0
cmp r8d, 0x3c65558a
je 0x1400064eb
test r9d, r9d
jne 0x1400064a0
mov rax, qword [rax]
jmp 0x140006470
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
movsd xmm0, qword [str.VDjWBLQeRRTJ_]
movsd qword [rbp - 0x28], xmm0
mov eax, dword [0x14009aab0]
mov dword [rbp - 0x20], eax
movzx eax, byte [0x14009aab4]
mov byte [rbp - 0x1c], al
mov r8d, r15d
cmp esi, 2
jl 0x14000662e
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm2, xmmword [0x1400abcd0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
mov eax, dword [0x1400abe70]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.VDjWBLQeRRTJ_]
xorps xmm2, xmm0
movd dword [rbp - 0x28], xmm2
movdqa xmm3, xmmword [0x1400abd70]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x24]
xorps xmm2, xmm1
movd dword [rbp - 0x24], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x28]
add r9, rax
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x140006640
lea rdx, [rbp - 0x28]
mov rcx, r12
call r11
mov rbx, rax
test rax, rax
jne 0x140006bd6
lea rcx, [0x1401cbb58]
call fcn.14000b500
lea rcx, [0x1401cbb78]
call fcn.14000b500
lea rdx, [rbp + 0x748]
lea rcx, [rbp - 0x5d]
call fcn.14000a290
mov r10, rax
cmp byte [rax + 0x10], bl
je 0x140006840
mov r8d, r15d
cmp esi, 2
jl 0x140006805
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140006700
cmp r8d, 0x11
jge 0x140006840
movsxd r9, r8d
add r9, r10
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140006810
mov rdx, r10
lea rcx, [rbp + 0x410]
call fcn.14000b6e0
nop
lea rdx, [rbp + 0x790]
lea rcx, [rbp - 0x5c]
call fcn.14000a2b0
mov r10, rax
cmp byte [rax + 0x29], 0
je 0x1400069f0
mov r8d, r15d
cmp esi, 2
jl 0x1400069b5
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x1400068b0
cmp r8d, 0x2a
jge 0x1400069f0
movsxd r9, r8d
add r9, r10
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2a
jl 0x1400069c0
mov rdx, r10
lea rcx, [rbp + 0x3f0]
call fcn.14000b6e0
nop
lea r8, [rbp + 0x410]
lea rdx, [rbp + 0x3f0]
lea rcx, [0x1401cba30]
call fcn.1400031d0
nop
lea rcx, [rbp + 0x3f0]
call fcn.14000b520
nop
lea rcx, [rbp + 0x410]
call fcn.14000b520
lea rdx, [rbp + 0x880]
lea rcx, [rbp - 0x56]
call fcn.14000a2b0
mov r9, rax
cmp byte [rax + 0x29], 0
je 0x14000a1cb
cmp esi, 2
jl 0x140006b99
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
nop word [rax + rax]
movd xmm2, r15d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r15 + 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r15d, 8
lea rcx, [rcx + 8]
cmp r15d, 0x28
jl 0x140006a90
cmp r15d, 0x2a
jge 0x14000a1cb
movsxd r8, r15d
add r8, r9
nop
mov eax, 0x4bda12f7
imul r15d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r15b
sub al, cl
add al, 0x33
xor byte [r8], al
inc r15d
lea r8, [r8 + 1]
cmp r15d, 0x2a
jge 0x14000a1cb
jmp 0x140006ba0
lea rdx, [0x1401cbb58]
lea rcx, [rbp + 0x5f0]
call fcn.14000b720
mov rcx, rax
call rbx
test al, al
jne 0x140007146
lea rcx, [0x1401cbb58]
call fcn.14000b500
lea rcx, [0x1401cbb78]
call fcn.14000b500
lea rdx, [rbp + 0x730]
lea rcx, [rbp - 0x5b]
call fcn.14000a290
mov r10, rax
cmp byte [rax + 0x10], 0
je 0x140006db0
mov r8d, r15d
cmp esi, 2
jl 0x140006d75
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140006c70
cmp r8d, 0x11
jge 0x140006db0
movsxd r9, r8d
add r9, r10
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140006d80
mov rdx, r10
lea rcx, [rbp + 0x430]
call fcn.14000b6e0
nop
lea rdx, [rbp + 0x7c0]
lea rcx, [rbp - 0x5a]
call fcn.14000a2f0
mov r10, rax
cmp byte [rax + 0x29], 0
je 0x140006f60
mov r8d, r15d
cmp esi, 2
jl 0x140006f25
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x140006e20
cmp r8d, 0x2a
jge 0x140006f60
movsxd r9, r8d
add r9, r10
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2a
jl 0x140006f30
mov rdx, r10
lea rcx, [rbp + 0x3b0]
call fcn.14000b6e0
nop
lea r8, [rbp + 0x430]
lea rdx, [rbp + 0x3b0]
lea rcx, [0x1401cba30]
call fcn.1400031d0
nop
lea rcx, [rbp + 0x3b0]
call fcn.14000b520
nop
lea rcx, [rbp + 0x430]
call fcn.14000b520
lea rdx, [rbp + 0x7f0]
lea rcx, [rbp - 0x59]
call fcn.14000a2f0
mov r9, rax
cmp byte [rax + 0x29], 0
je 0x14000a1ee
cmp esi, 2
jl 0x140007109
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
nop word [rax + rax]
movd xmm2, r15d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r15 + 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r15d, 8
lea rcx, [rcx + 8]
cmp r15d, 0x28
jl 0x140007000
cmp r15d, 0x2a
jge 0x14000a1ee
movsxd r8, r15d
add r8, r9
nop
mov eax, 0x4bda12f7
imul r15d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r15b
sub al, cl
add al, 0x33
xor byte [r8], al
inc r15d
lea r8, [r8 + 1]
cmp r15d, 0x2a
jge 0x14000a1ee
jmp 0x140007110
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 0x1400071d6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400071d6
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, 0x928f71b8
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400071d1
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 0x1400071b0
cmp r8d, 0x8b3c5f54
je 0x1400071db
test r9d, r9d
jne 0x140007190
mov rax, qword [rax]
jmp 0x140007160
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
movups xmm0, xmmword [str.VDjZX_PTdPT_Z.2C]
movups xmmword [rbp + 0x68], xmm0
movzx eax, byte [0x14009a908]
mov byte [rbp + 0x78], al
mov r8d, r15d
cmp esi, 2
jl 0x140007347
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x6c]
mov edx, dword [rsp + 0x40]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
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 0x140007242
cmp r8d, 0x11
jge 0x140007390
movsxd rax, r8d
lea r9, [rbp + 0x68]
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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140007360
lea rdx, [rbp + 0x68]
mov rcx, r12
call r11
mov rdi, rax
test rax, rax
jne 0x1400078f6
lea rcx, [0x1401cbb58]
call fcn.14000b500
lea rcx, [0x1401cbb78]
call fcn.14000b500
lea rdx, [rbp + 0x778]
lea rcx, [rbp - 0x58]
call fcn.14000a290
mov r10, rax
cmp byte [rax + 0x10], dil
je 0x140007560
mov r8d, r15d
cmp esi, 2
jl 0x140007525
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140007420
cmp r8d, 0x11
jge 0x140007560
movsxd r9, r8d
add r9, r10
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140007530
mov rdx, r10
lea rcx, [rbp + 0x470]
call fcn.14000b6e0
nop
lea rdx, [rbp + 0x820]
lea rcx, [rbp - 0x57]
call fcn.14000a330
mov r10, rax
cmp byte [rax + 0x29], 0
je 0x140007710
mov r8d, r15d
cmp esi, 2
jl 0x1400076d5
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x1400075d0
cmp r8d, 0x2a
jge 0x140007710
movsxd r9, r8d
add r9, r10
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2a
jl 0x1400076e0
mov rdx, r10
lea rcx, [rbp + 0x450]
call fcn.14000b6e0
nop
lea r8, [rbp + 0x470]
lea rdx, [rbp + 0x450]
lea rcx, [0x1401cba30]
call fcn.1400031d0
nop
lea rcx, [rbp + 0x450]
call fcn.14000b520
nop
lea rcx, [rbp + 0x470]
call fcn.14000b520
lea rdx, [rbp + 0x850]
lea rcx, [rsp + 0x30]
call fcn.14000a330
mov r9, rax
cmp byte [rax + 0x29], 0
je 0x14000a211
cmp esi, 2
jl 0x1400078b9
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
nop dword [rax + rax]
movd xmm2, r15d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r15 + 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r15d, 8
lea rcx, [rcx + 8]
cmp r15d, 0x28
jl 0x1400077b0
cmp r15d, 0x2a
jge 0x14000a211
movsxd r8, r15d
add r8, r9
nop
mov eax, 0x4bda12f7
imul r15d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r15b
sub al, cl
add al, 0x33
xor byte [r8], al
inc r15d
lea r8, [r8 + 1]
cmp r15d, 0x2a
jge 0x14000a211
jmp 0x1400078c0
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x968]
call fcn.14000e810
lea rcx, [rbp + 0x968]
call fcn.14000d050
nop
movsd xmm0, qword [0x14009ac90]
movsd qword [rbp - 0x70], xmm0
movzx ecx, word [0x14009ac98]
mov word [rbp - 0x68], cx
movzx eax, byte [0x14009ac9a]
mov byte [rbp - 0x70], 0x74
xor byte [rbp - 0x6f], 0x34
xor byte [rbp - 0x6e], 0x35
xor byte [rbp - 0x6d], 0x36
xor byte [rbp - 0x6c], 0x37
xor byte [rbp - 0x6b], 0x38
xor byte [rbp - 0x6a], 0x39
xor byte [rbp - 0x69], 0x3a
xor cl, 0x3b
mov byte [rbp - 0x68], cl
xor byte [rbp - 0x67], 0x3c
xor al, 0x3d
mov byte [rbp - 0x66], al
lea rax, [rbp - 0x70]
mov qword [rbp + 0xc0], rax
xor r8d, r8d
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x490]
call fcn.140012920
nop
lea rcx, [rbp + 0x490]
call fcn.140002ec0
movzx ebx, al
lea rcx, [rbp + 0x490]
call fcn.14000ce50
mov ecx, r15d
test bl, bl
je 0x14000890f
movups xmm0, xmmword [0x14009aaf0]
movups xmmword [rbp + 0x2d0], xmm0
movups xmm1, xmmword [0x14009ab00]
movups xmmword [rbp + 0x2e0], xmm1
movups xmm0, xmmword [0x14009ab10]
movups xmmword [rbp + 0x2f0], xmm0
movups xmm1, xmmword [0x14009ab20]
movups xmmword [rbp + 0x300], xmm1
movsd xmm0, qword [0x14009ab30]
movsd qword [rbp + 0x310], xmm0
mov eax, dword [0x14009ab38]
mov dword [rbp + 0x318], eax
cmp esi, 2
jl 0x140007b42
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x2d4]
mov r8d, 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x48
jl 0x140007a40
cmp ecx, 0x4c
jge 0x140007b7c
movsxd rax, ecx
lea r8, [rbp + 0x2d0]
add r8, rax
nop
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, 0x33
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x4c
jl 0x140007b50
lea rdx, [rbp + 0x2d0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000dc50
lea rax, [rbp + 0x258]
mov qword [rbp - 0x30], rax
mov rax, qword [str.__VSYK:h_GWT_d]
mov qword [rbp - 0x50], rax
cmp byte [0x14009ac07], 0
je 0x140007cf0
cmp esi, 2
jl 0x140007cb3
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm2, xmmword [0x1400abcd0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
mov eax, dword [0x1400abe70]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x50]
xorps xmm2, xmm1
movd dword [rbp - 0x50], xmm2
movdqa xmm3, xmmword [0x1400abd70]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x4c]
xorps xmm2, xmm1
movd dword [rbp - 0x4c], xmm2
jmp 0x140007cf0
lea r9, [rbp - 0x50]
mov r8d, r15d
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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140007cc0
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x258]
call fcn.14000e810
nop
lea rax, [rbp - 0x50]
mov r8, r13
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140007d10
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x258]
call fcn.14000e830
nop
lea rax, [rbp + 0x238]
mov qword [rbp + 8], rax
movsd xmm0, qword [0x14009ac90]
movsd qword [rsp + 0x78], xmm0
movzx ecx, word [0x14009ac98]
mov word [rbp - 0x80], cx
movzx eax, byte [0x14009ac9a]
mov byte [rsp + 0x78], 0x74
xor byte [rsp + 0x79], 0x34
xor byte [rsp + 0x7a], 0x35
xor byte [rsp + 0x7b], 0x36
xor byte [rsp + 0x7c], 0x37
xor byte [rsp + 0x7d], 0x38
xor byte [rsp + 0x7e], 0x39
xor byte [rsp + 0x7f], 0x3a
xor cl, 0x3b
mov byte [rbp - 0x80], cl
xor byte [rbp - 0x7f], 0x3c
xor al, 0x3d
mov byte [rbp - 0x7e], al
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x238]
call fcn.14000e810
nop
lea rax, [rsp + 0x78]
inc r13
cmp byte [rax + r13], 0
jne 0x140007da4
mov r8, r13
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x238]
call fcn.14000e830
nop
lea r8, [rbp + 0x258]
lea rdx, [rbp + 0x238]
lea rcx, [rbp + 0x610]
call fcn.140004440
mov rdx, rax
lea rcx, [rbp + 0x968]
call fcn.14000b540
lea rcx, [rbp + 0x610]
call fcn.14000cec0
lea rax, [rbp + 0x630]
mov qword [rbp + 8], rax
lea rdx, [0x1401cbb78]
lea rcx, [rbp + 0x630]
call fcn.14000b720
mov rbx, rax
lea rdx, [rbp + 0x968]
lea rcx, [rbp + 0x650]
call fcn.14000b720
nop
mov rdx, rbx
mov rcx, rax
call rdi
test al, al
jne 0x140009bd0
xor edx, edx
lea rcx, [0x1401cbb58]
call fcn.14000cf20
xor edx, edx
lea rcx, [0x1401cbb78]
call fcn.14000cf20
movups xmm0, xmmword [0x14009ac40]
movups xmmword [rbp + 0x150], xmm0
movups xmm1, xmmword [0x14009ac50]
movups xmmword [rbp + 0x160], xmm1
movups xmm0, xmmword [0x14009ac60]
movups xmmword [rbp + 0x170], xmm0
movups xmm1, xmmword [0x14009ac70]
movups xmmword [rbp + 0x180], xmm1
movsd xmm0, qword [0x14009ac80]
movsd qword [rbp + 0x190], xmm0
movzx eax, word [0x14009ac88]
mov word [rbp + 0x198], ax
movzx eax, byte [0x14009ac8a]
mov byte [rbp + 0x19a], al
mov ecx, r15d
cmp esi, 2
jl 0x140008002
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x154]
mov r8d, dword [rsp + 0x40]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x48
jl 0x140007f00
cmp ecx, 0x4b
jge 0x14000803c
movsxd rax, ecx
lea r8, [rbp + 0x150]
add r8, rax
nop
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, 0x33
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x4b
jl 0x140008010
lea rdx, [rbp + 0x150]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.14000dc50
mov edi, 0x9c4
mov dword [rbp + 0x20], edi
mov byte [rbp + 0x24], 1
mov rbx, qword [rbp + 0x20]
shr rbx, 0x20
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x938], xmm0
mov qword [rbp + 0x948], rax
lea rdx, [rbp + 0x9e8]
lea rcx, [rbp + 0x938]
call fcn.140003ac0
nop
test bl, bl
je 0x1400080b3
movsxd rax, edi
mov qword [rbp + 0xa8], rax
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x1a0]
call fcn.14000de60
mov rcx, rax
call fcn.140012690
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140008146
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140008146
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, 0x68c37d83
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140008141
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140008120
cmp r8d, 0xb890693b
je 0x14000814b
test r9d, r9d
jne 0x140008100
mov rax, qword [rax]
jmp 0x1400080d0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r14d, dword [rcx + rax*4]
add r14, r10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x1400081f6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400081f6
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, 0x6ac380a9
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400081f1
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 0x1400081d0
cmp r8d, 0xe4cdbeaa
je 0x1400081fb
test r9d, r9d
jne 0x1400081b0
mov rax, qword [rax]
jmp 0x140008180
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 esi, eax
mov eax, 0x80010003
imul esi
add edx, esi
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub esi, 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 0x1400082c6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400082c6
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, 0x67c37bf0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400082c1
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 0x1400082a0
cmp r8d, 0xa8ff70d6
je 0x1400082cb
test r9d, r9d
jne 0x140008280
mov rax, qword [rax]
jmp 0x140008250
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 edx, esi
mov rcx, rax
call r14
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 0x140008376
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140008376
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, 0x9428489a
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140008371
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 0x140008350
cmp r8d, 0x5d1a4111
je 0x14000837b
test r9d, r9d
jne 0x140008330
mov rax, qword [rax]
jmp 0x140008300
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 r8d, eax
mov eax, 0x80010003
imul r8d
add edx, r8d
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x7fff
sub r8d, ecx
mov ecx, r8d
int 0x29
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 0x140008446
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140008446
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, 0x11253bca
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140008441
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 0x140008420
cmp r8d, 0xa2d2c0f
je 0x14000844b
test r9d, r9d
jne 0x140008400
mov rax, qword [rax]
jmp 0x1400083d0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x1400084f6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400084f6
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, 0x12253d5d
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400084f1
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 0x1400084d0
cmp r8d, 0x3e2f085e
je 0x1400084fb
test r9d, r9d
jne 0x1400084b0
mov rax, qword [rax]
jmp 0x140008480
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x1400085c6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400085c6
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, 0x122e403
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400085c1
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 0x1400085a0
cmp r8d, 0xebfbb833
je 0x1400085cb
test r9d, r9d
jne 0x140008580
mov rax, qword [rax]
jmp 0x140008550
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x140008676
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140008676
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, 0x22e270
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140008671
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 0x140008650
cmp r8d, 0x73c466cf
je 0x14000867b
test r9d, r9d
jne 0x140008630
mov rax, qword [rax]
jmp 0x140008600
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140008746
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140008746
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, 0x920b204
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140008741
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 0x140008720
cmp r8d, 0x222f1801
je 0x14000874b
test r9d, r9d
jne 0x140008700
mov rax, qword [rax]
jmp 0x1400086d0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x1400087f6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400087f6
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, 0xa20b397
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400087f1
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 0x1400087d0
cmp r8d, 0x56a3f888
je 0x1400087fb
test r9d, r9d
jne 0x1400087b0
mov rax, qword [rax]
jmp 0x140008780
mov edx, dword [rdi + 0x1c]
add rdx, r10
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov edx, dword [rdx + rcx*4]
add rdx, r10
call rdx
mov ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x1400088c6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400088c6
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, 0x9dcaa1a0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400088c1
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 0x1400088a0
cmp r8d, 0x3caa84a2
je 0x1400088cb
test r9d, r9d
jne 0x140008880
mov rax, qword [rax]
jmp 0x140008850
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
nop
mov rcx, qword [rbp + 0x938]
xor rcx, qword [rbp + 0x940]
mov qword [rbp + 0x938], rcx
mov rax, qword [rbp + 0x948]
mov qword [rax], rcx
mov esi, dword [0x1400bd088]
jmp 0x140009bd0
movups xmm0, xmmword [0x14009a208]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [0x14009a218]
movups xmmword [rbp + 0xe0], xmm1
movzx eax, byte [0x14009a228]
mov byte [rbp + 0xf0], al
cmp esi, 2
jl 0x140008a82
movdqa xmm5, xmmword [0x1400abcd0]
mov ecx, r15d
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0xd4]
mov r8d, dword [rsp + 0x40]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x20
jl 0x140008980
cmp ecx, 0x21
jge 0x140008abc
movsxd rax, ecx
lea r8, [rbp + 0xd0]
add r8, rax
nop
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, 0x33
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x21
jl 0x140008a90
lea rdx, [rbp + 0xd0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000dc50
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp + 0x968]
mov rcx, rbx
call fcn.140012980
lea rax, [rbp + 0x670]
mov qword [rbp + 8], rax
lea rdx, [0x1401cbb78]
lea rcx, [rbp + 0x670]
call fcn.14000b720
mov rbx, rax
lea rdx, [rbp + 0x968]
lea rcx, [rbp + 0x5d0]
call fcn.14000b720
nop
mov rdx, rbx
mov rcx, rax
call rdi
xor edx, edx
lea rcx, [0x1401cbb58]
test al, al
jne 0x1400096c8
call fcn.14000cf20
xor edx, edx
lea rcx, [0x1401cbb78]
call fcn.14000cf20
mov r9, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
movups xmm0, xmmword [0x14009ac40]
movups xmmword [rbp + 0x100], xmm0
movups xmm1, xmmword [0x14009ac50]
movups xmmword [rbp + 0x110], xmm1
movups xmm0, xmmword [0x14009ac60]
movups xmmword [rbp + 0x120], xmm0
movups xmm1, xmmword [0x14009ac70]
movups xmmword [rbp + 0x130], xmm1
movsd xmm0, qword [0x14009ac80]
movsd qword [rbp + 0x140], xmm0
movzx eax, word [0x14009ac88]
mov word [rbp + 0x148], ax
movzx eax, byte [0x14009ac8a]
mov byte [rbp + 0x14a], al
mov ecx, r15d
cmp esi, 2
jl 0x140008d12
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x104]
mov r8d, dword [rsp + 0x40]
nop dword [rax]
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x48
jl 0x140008c10
cmp ecx, 0x4b
jge 0x140008d4c
movsxd rax, ecx
lea r8, [rbp + 0x100]
add r8, rax
nop
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, 0x33
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x4b
jl 0x140008d20
lea rdx, [rbp + 0x100]
mov rcx, r9
call fcn.14000dc50
movzx eax, word [0x14009ac98]
mov word [rsp + 0x58], ax
movsd xmm0, qword [0x14009ac90]
movzx eax, byte [0x14009ac9a]
movsd qword [rsp + 0x50], xmm0
mov byte [rsp + 0x50], 0x74
xor byte [rsp + 0x51], 0x34
xor byte [rsp + 0x52], 0x35
xor byte [rsp + 0x53], 0x36
xor byte [rsp + 0x54], 0x37
xor byte [rsp + 0x55], 0x38
xor byte [rsp + 0x56], 0x39
xor byte [rsp + 0x57], 0x3a
xor byte [rsp + 0x58], 0x3b
xor byte [rsp + 0x59], 0x3c
xor al, 0x3d
mov byte [rsp + 0x5a], al
lea rax, [rsp + 0x50]
mov qword [rbp + 0xb0], rax
xor r8d, r8d
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x4b0]
call fcn.140012920
nop
lea rcx, [rbp + 0x4b0]
call fcn.140002f50
nop
lea rcx, [rbp + 0x4b0]
call fcn.14000ce50
mov edi, 0x9c4
mov dword [rbp + 0x10], edi
mov byte [rbp + 0x14], 1
mov rbx, qword [rbp + 0x10]
shr rbx, 0x20
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x950], xmm0
mov qword [rbp + 0x960], rax
lea rdx, [rbp + 0x9e8]
lea rcx, [rbp + 0x950]
call fcn.140003ac0
nop
test bl, bl
je 0x140008e54
movsxd rax, edi
mov qword [rbp + 0xb8], rax
lea rdx, [rbp + 0xb8]
lea rcx, [rbp + 0x2b8]
call fcn.14000de60
mov rcx, rax
call fcn.140012690
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 0x140008ee6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140008ee6
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, 0x68c37d83
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140008ee1
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 0x140008ec0
cmp r8d, 0xb890693b
je 0x140008eeb
test r9d, r9d
jne 0x140008ea0
mov rax, qword [rax]
jmp 0x140008e70
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov r14d, dword [rcx + rax*4]
add r14, r10
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140008f96
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140008f96
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, 0x6ac380a9
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140008f91
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140008f70
cmp r8d, 0xe4cdbeaa
je 0x140008f9b
test r9d, r9d
jne 0x140008f50
mov rax, qword [rax]
jmp 0x140008f20
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 esi, eax
mov eax, 0x80010003
imul esi
add edx, esi
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub esi, 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 0x140009066
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009066
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, 0x67c37bf0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140009061
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 0x140009040
cmp r8d, 0xa8ff70d6
je 0x14000906b
test r9d, r9d
jne 0x140009020
mov rax, qword [rax]
jmp 0x140008ff0
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 edx, esi
mov rcx, rax
call r14
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 0x140009116
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009116
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, 0x9428489a
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140009111
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400090f0
cmp r8d, 0x5d1a4111
je 0x14000911b
test r9d, r9d
jne 0x1400090d0
mov rax, qword [rax]
jmp 0x1400090a0
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 r8d, eax
mov eax, 0x80010003
imul r8d
add edx, r8d
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x7fff
sub r8d, ecx
mov ecx, r8d
int 0x29
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 0x1400091e6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400091e6
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, 0x11253bca
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400091e1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400091c0
cmp r8d, 0xa2d2c0f
je 0x1400091eb
test r9d, r9d
jne 0x1400091a0
mov rax, qword [rax]
jmp 0x140009170
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x140009296
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009296
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, 0x12253d5d
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140009291
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140009270
cmp r8d, 0x3e2f085e
je 0x14000929b
test r9d, r9d
jne 0x140009250
mov rax, qword [rax]
jmp 0x140009220
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140009366
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009366
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, 0x122e403
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140009361
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 0x140009340
cmp r8d, 0xebfbb833
je 0x14000936b
test r9d, r9d
jne 0x140009320
mov rax, qword [rax]
jmp 0x1400092f0
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x140009416
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009416
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, 0x22e270
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140009411
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 0x1400093f0
cmp r8d, 0x73c466cf
je 0x14000941b
test r9d, r9d
jne 0x1400093d0
mov rax, qword [rax]
jmp 0x1400093a0
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x1400094e6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400094e6
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, 0x920b204
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400094e1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400094c0
cmp r8d, 0x222f1801
je 0x1400094eb
test r9d, r9d
jne 0x1400094a0
mov rax, qword [rax]
jmp 0x140009470
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov esi, dword [rcx + rax*4]
add rsi, r10
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 0x140009596
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009596
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, 0xa20b397
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140009591
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140009570
cmp r8d, 0x56a3f888
je 0x14000959b
test r9d, r9d
jne 0x140009550
mov rax, qword [rax]
jmp 0x140009520
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 ecx, eax
mov eax, 0x80010003
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x7fff
sub ecx, eax
call rsi
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
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 0x140009666
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009666
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, 0x9dcaa1a0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140009661
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140009640
cmp r8d, 0x3caa84a2
je 0x14000966b
test r9d, r9d
jne 0x140009620
mov rax, qword [rax]
jmp 0x1400095f0
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
nop
mov rcx, qword [rbp + 0x950]
xor rcx, qword [rbp + 0x958]
mov qword [rbp + 0x950], rcx
mov rax, qword [rbp + 0x960]
mov qword [rax], rcx
xor edx, edx
lea rcx, [0x1401cbb58]
call fcn.14000cf20
xor edx, edx
lea rcx, [0x1401cbb78]
call fcn.14000cf20
mov esi, dword [0x1400bd088]
jmp 0x1400096db
call fcn.14000cf20
xor edx, edx
lea rcx, [0x1401cbb78]
call fcn.14000cf20
movzx eax, byte [0x14009abf8]
movups xmm1, xmmword [0x14009abe8]
movups xmm0, xmmword [0x14009abd8]
mov byte [rbp + 0xa0], al
movups xmmword [rbp + 0x90], xmm1
movups xmmword [rbp + 0x80], xmm0
mov r9, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov ecx, r15d
cmp esi, 2
jl 0x140009852
movdqa xmm5, xmmword [0x1400abcd0]
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm6, xmmword [0x1400abd90]
movdqa xmm0, xmmword [0x1400abe70]
movdqa xmmword [rsp + 0x40], xmm0
lea rdx, [rbp + 0x84]
mov r8d, 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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
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, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x20
jl 0x140009750
cmp ecx, 0x21
jge 0x14000988c
movsxd rax, ecx
lea r8, [rbp + 0x80]
add r8, rax
nop
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, 0x33
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x21
jl 0x140009860
lea rdx, [rbp + 0x80]
mov rcx, r9
call fcn.14000dc50
call fcn.140022050
lea rax, [rbp + 0x218]
mov qword [rbp + 8], rax
mov byte [rsp + 0x32], 0
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x218]
call fcn.14000e810
nop
lea rax, [rsp + 0x32]
mov r8, r13
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400098d0
lea rdx, [rsp + 0x32]
lea rcx, [rbp + 0x218]
call fcn.14000e830
nop
lea rax, [rbp + 0x1f8]
mov qword [rbp - 0x30], rax
mov byte [rsp + 0x31], 0
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x1f8]
call fcn.14000e810
nop
lea rax, [rsp + 0x31]
mov r8, r13
inc r8
cmp byte [rax + r8], 0
jne 0x140009916
lea rdx, [rsp + 0x31]
lea rcx, [rbp + 0x1f8]
call fcn.14000e830
nop
lea rax, [rbp + 0x690]
mov qword [rbp + 0x2c0], rax
lea rdx, [rbp + 0x968]
lea rcx, [rbp + 0x690]
call fcn.14000b720
mov rbx, rax
lea rax, [rbp + 0x1d8]
mov qword [rbp + 0x1a8], rax
mov rcx, qword [str.__VSYK:h_GWT_d]
mov qword [rbp - 0x48], rcx
cmp byte [0x14009ac07], 0
je 0x140009ac0
cmp esi, 2
jl 0x140009a7d
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm2, xmmword [0x1400abcd0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
mov eax, dword [0x1400abe70]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x48]
xorps xmm2, xmm1
movd dword [rbp - 0x48], xmm2
movdqa xmm3, xmmword [0x1400abd70]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x44]
xorps xmm2, xmm1
movd dword [rbp - 0x44], xmm2
jmp 0x140009ac0
lea r9, [rbp - 0x48]
mov r8d, r15d
nop dword [rax]
nop dword [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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140009a90
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x1d8]
call fcn.14000e810
nop
lea rax, [rbp - 0x48]
mov r8, r13
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140009ae0
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x1d8]
call fcn.14000e830
nop
lea rax, [rbp + 0x1b8]
mov qword [rsp + 0x40], rax
movsd xmm0, qword [0x14009ac90]
movsd qword [rsp + 0x68], xmm0
movzx ecx, word [0x14009ac98]
mov word [rsp + 0x70], cx
movzx eax, byte [0x14009ac9a]
mov byte [rsp + 0x68], 0x74
xor byte [rsp + 0x69], 0x34
xor byte [rsp + 0x6a], 0x35
xor byte [rsp + 0x6b], 0x36
xor byte [rsp + 0x6c], 0x37
xor byte [rsp + 0x6d], 0x38
xor byte [rsp + 0x6e], 0x39
xor byte [rsp + 0x6f], 0x3a
xor cl, 0x3b
mov byte [rsp + 0x70], cl
xor byte [rsp + 0x71], 0x3c
xor al, 0x3d
mov byte [rsp + 0x72], al
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x1b8]
call fcn.14000e810
nop
lea rax, [rsp + 0x68]
nop dword [rax]
inc r13
cmp byte [rax + r13], 0
jne 0x140009b80
mov r8, r13
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0x1b8]
call fcn.14000e830
nop
lea rax, [rbp + 0x218]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x1f8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, rbx
lea rdx, [rbp + 0x1d8]
lea rcx, [rbp + 0x1b8]
call fcn.140004a00
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 0x140009c66
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140009c66
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov ecx, dword [rcx + rbx]
add rcx, r10
mov r8d, 0xed45cf68
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140009c61
nop dword [rax]
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x140009c40
cmp r8d, 0xe9d58ca9
je 0x140009c6b
test r9d, r9d
jne 0x140009c20
mov rax, qword [rax]
jmp 0x140009bf0
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 rcx, r12
call rdx
lea rcx, [rbp + 0x988]
call fcn.1400030d0
nop
mov eax, dword [str.o_GWT_9]
mov dword [rsp + 0x60], eax
movzx ecx, word [0x14009a9b4]
mov word [rsp + 0x64], cx
movzx eax, byte [0x14009a9b6]
mov byte [rsp + 0x60], 0x5c
xor byte [rsp + 0x61], 0x34
xor byte [rsp + 0x62], 0x35
xor byte [rsp + 0x63], 0x36
xor cl, 0x37
mov byte [rsp + 0x64], cl
xor byte [rsp + 0x65], 0x38
xor al, 0x39
mov byte [rsp + 0x66], al
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x988]
lea rcx, [rbp + 0x6b0]
call fcn.14000d880
nop
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x4d0]
call fcn.14000dbf0
nop
lea rcx, [rbp + 0x4d0]
call fcn.140002ec0
movzx ebx, al
lea rcx, [rbp + 0x4d0]
call fcn.14000ce50
nop
lea rcx, [rbp + 0x6b0]
call fcn.14000cec0
test bl, bl
jne 0x140009dbe
mov eax, dword [str.o_GWT_9]
mov dword [rbp - 0x78], eax
movzx ecx, word [0x14009a9b4]
mov word [rbp - 0x74], cx
movzx eax, byte [0x14009a9b6]
mov byte [rbp - 0x78], 0x5c
xor byte [rbp - 0x77], 0x34
xor byte [rbp - 0x76], 0x35
xor byte [rbp - 0x75], 0x36
xor cl, 0x37
mov byte [rbp - 0x74], cl
xor byte [rbp - 0x73], 0x38
xor al, 0x39
mov byte [rbp - 0x72], al
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x988]
lea rcx, [rbp + 0x6d0]
call fcn.14000d880
nop
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x4f0]
call fcn.14000dbf0
nop
lea rcx, [rbp + 0x4f0]
call fcn.140003080
nop
lea rcx, [rbp + 0x4f0]
call fcn.14000ce50
nop
lea rcx, [rbp + 0x6d0]
call fcn.14000cec0
mov eax, dword [0x14009aae8]
mov dword [rbp - 0x38], eax
movzx eax, word [0x14009aaec]
mov word [rbp - 0x34], ax
movzx eax, byte [0x14009aaee]
movsd xmm0, qword [str.o_GWT_eYTR_WX3A]
mov byte [rbp - 0x32], al
movsd qword [rbp - 0x40], xmm0
mov r8d, r15d
cmp esi, 2
jl 0x140009ef4
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm2, xmmword [0x1400abcd0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
mov eax, dword [0x1400abe70]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.o_GWT_eYTR_WX3A]
xorps xmm2, xmm0
movd dword [rbp - 0x40], xmm2
movdqa xmm3, xmmword [0x1400abd70]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x3c]
xorps xmm2, xmm1
movd dword [rbp - 0x3c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x40]
add r9, rax
nop
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, 0x33
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x140009f00
lea r8, [rbp - 0x40]
lea rdx, [rbp + 0x988]
lea rcx, [rbp + 0x6f0]
call fcn.14000d880
nop
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x510]
call fcn.14000dbf0
nop
lea rcx, [rbp + 0x510]
call fcn.140002ec0
movzx ebx, al
lea rcx, [rbp + 0x510]
call fcn.14000ce50
nop
lea rcx, [rbp + 0x6f0]
call fcn.14000cec0
test bl, bl
jne 0x14000a151
movsd xmm0, qword [str.o_GWT_eYTR_WX3A]
movsd qword [rbp - 8], xmm0
mov eax, dword [0x14009aae8]
mov dword [rbp], eax
movzx eax, word [0x14009aaec]
mov word [rbp + 4], ax
movzx eax, byte [0x14009aaee]
mov byte [rbp + 6], al
cmp esi, 2
jl 0x14000a0be
movdqa xmm4, xmmword [0x1400ac1e0]
movdqa xmm2, xmmword [0x1400abcd0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
mov eax, dword [0x1400abe70]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [str.o_GWT_eYTR_WX3A]
xorps xmm2, xmm0
movd dword [rbp - 8], xmm2
movdqa xmm3, xmmword [0x1400abd70]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400abd90]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400abe50]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 4]
xorps xmm2, xmm1
movd dword [rbp - 4], xmm2
mov r15d, 8
movsxd rax, r15d
lea r8, [rbp - 8]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r15d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r15b
sub al, cl
add al, 0x33
xor byte [r8], al
inc r15d
lea r8, [r8 + 1]
cmp r15d, 0xf
jl 0x14000a0d0
lea r8, [rbp - 8]
lea rdx, [rbp + 0x988]
lea rcx, [rbp + 0x710]
call fcn.14000d880
nop
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0x550]
call fcn.14000dbf0
nop
lea rcx, [rbp + 0x550]
call fcn.140003080
nop
lea rcx, [rbp + 0x550]
call fcn.14000ce50
nop
lea rcx, [rbp + 0x710]
call fcn.14000cec0
call qword [sym.imp.VMProtectSDK64.dll_VMProtectEnd]
nop
lea rcx, [rbp + 0x988]
call fcn.14000cec0
nop
lea rcx, [rbp + 0x968]
call fcn.14000cec0
xor eax, eax
mov rcx, qword [rbp + 0x9a8]
xor rcx, rsp
call fcn.140092d60
lea r11, [rsp + 0xac0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rdx, r9
lea rcx, [rbp + 0x5b8]
call fcn.1400020b0
lea rdx, [0x1400b9570]
lea rcx, [rbp + 0x5b8]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
mov rdx, r9
lea rcx, [rbp + 0x570]
call fcn.1400020b0
lea rdx, [0x1400b9570]
lea rcx, [rbp + 0x570]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
mov rdx, r9
lea rcx, [rbp + 0x588]
call fcn.1400020b0
lea rdx, [0x1400b9570]
lea rcx, [rbp + 0x588]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
mov rdx, r9
lea rcx, [rbp + 0x5a0]
call fcn.1400020b0
lea rdx, [0x1400b9570]
lea rcx, [rbp + 0x5a0]
call sub.VCRUNTIME140.dll__CxxThrowException
int3