Function at 0x7ff77f2e4570
Capabilities:
Access peb ldr_data
Encode data using xor
Execute command
Get kernel32 base address
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x100
mov rax, qword [0x7ff77f37b080]
xor rax, rsp
mov qword [rbp + 0x2f], rax
lea rcx, [0x7ff77f48f0a0]
call fcn.7ff77f300000
cmp byte [0x7ff77f48f2b8], 0
jne 0x7ff77f2e481b
mov eax, dword [0x7ff77f3672fc]
mov dword [rsp + 0x48], eax
cmp byte [0x7ff77f3672ff], 0
je 0x7ff77f2e46af
xor r12d, r12d
cmp dword [0x7ff77f37b090], 2
jl 0x7ff77f2e4670
movdqa xmm3, xmmword [0x7ff77f36fcf0]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x7ff77f36fd50]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x7ff77f36fd50]
shufps xmm2, xmm0, 0xdd
mov edi, 1
movd xmm0, edi
psrad xmm2, xmm0
mov ecx, 0x1f
movd xmm0, ecx
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x7ff77f36fd20]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x7ff77f36fd40]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x7ff77f36fd60]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x48], xmm2
jmp 0x7ff77f2e46af
lea r8, [rsp + 0x48]
nop word [rax + rax]
mov eax, 0x94f2095
imul r12d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r12b
sub al, cl
add al, 0x35
xor byte [r8], al
inc r12d
lea r8, [r8 + 1]
cmp r12d, 4
jl 0x7ff77f2e4680
lea rcx, [rsp + 0x48]
call qword [sym.imp.ucrtbase.dll_system]
movzx eax, word [0x7ff77f3672d4]
mov word [rsp + 0x20], ax
lea rcx, [rsp + 0x20]
cmp byte [0x7ff77f3672d5], 0
je 0x7ff77f2e46de
mov byte [rsp + 0x20], 0xa
xor byte [rsp + 0x21], 0x36
call fcn.7ff77f2e3440
call fcn.7ff77f2f1d10
movsd xmm0, qword [0x7ff77f3672f0]
movzx eax, byte [0x7ff77f3672f8]
movsd qword [rsp + 0x28], xmm0
mov rcx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov byte [rsp + 0x28], 0x53
xor byte [rsp + 0x29], 0x36
xor byte [rsp + 0x2a], 0x37
xor byte [rsp + 0x2b], 0x38
xor byte [rsp + 0x2c], 0x39
xor byte [rsp + 0x2d], 0x3a
xor byte [rsp + 0x2e], 0x3b
xor byte [rsp + 0x2f], 0x3c
xor al, 0x3d
mov byte [rsp + 0x30], al
lea rdx, [rsp + 0x28]
call fcn.7ff77f2e6c30
mov rcx, rax
lea rdx, [0x7ff77f48f2c0]
call fcn.7ff77f2e6e00
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e47e9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e47e9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x145fd70
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e47e4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e47b0
cmp r10d, 0xecd64e03
je 0x7ff77f2e47f1
test r11d, r11d
jne 0x7ff77f2e4790
mov rax, qword [rax]
jmp 0x7ff77f2e4760
mov ecx, dword [r14 + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
add rax, rbx
mov ecx, 0x7d0
call rax
mov eax, 4
jmp 0x7ff77f2e5cd4
lea rcx, [0x7ff77f48f0a0]
call fcn.7ff77f2fbf10
test al, al
je 0x7ff77f2e4c1a
mov r15, qword [0x7ff77f48f400]
movdqa xmm0, xmmword [0x7ff77f36fdf0]
movdqu xmmword [rbp - 0x49], xmm0
mov dword [rbp - 0x39], 0x100e7c2
lea rcx, [rbp - 0x49]
call fcn.7ff77f2e6190
mov dword [rsp + 0x40], 0x969f9bfc
mov dword [rsp + 0x44], 0x100c1ac
lea rcx, [rsp + 0x40]
call fcn.7ff77f2e77f0
lea rdx, [rsp + 0x40]
lea rax, [rsp + 0x40]
mov r13, 0xffffffffffffffff
nop
inc r13
cmp byte [rax + r13], 0
jne 0x7ff77f2e4880
lea r8, [rsp + 0x40]
add r8, r13
lea r9, [rbp - 0x75]
lea rcx, [rbp - 0x11]
call fcn.7ff77f2e77a0
nop
cmp dword [r15 + 0x10], 0
jne 0x7ff77f2e48e9
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rsp + 0x20], 0xd6
mov byte [rsp + 0x22], 1
lea rcx, [rsp + 0x20]
call fcn.7ff77f2e6850
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.7ff77f2e6c30
lea rdx, [0x7ff77f2e75a0]
mov rcx, rax
call qword [sym.imp.msvcp140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___class_std::basic_istream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_istream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov dword [r15 + 0x10], 1
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rsp + 0x48], 0xfffefdfc
mov word [rbp - 0x7d], 0xc0
mov byte [rbp - 0x7b], 1
lea rcx, [rsp + 0x48]
call fcn.7ff77f2e67f0
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rsp + 0x20], 0x87
mov byte [rsp + 0x22], 1
lea rcx, [rsp + 0x20]
call fcn.7ff77f2e6850
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e49e9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e49e9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0xb97fe996
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e49e4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e49b0
cmp r10d, 0xb7a916d0
je 0x7ff77f2e49f1
test r11d, r11d
jne 0x7ff77f2e4990
mov rax, qword [rax]
jmp 0x7ff77f2e4960
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 3
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rcx, [rbp - 0x11]
call fcn.7ff77f2e6860
mov rdx, rax
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e4ad9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e4ad9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0x40225b2c
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e4ad4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e4aa0
cmp r10d, 0x3ef15572
je 0x7ff77f2e4ae1
test r11d, r11d
jne 0x7ff77f2e4a80
mov rax, qword [rax]
jmp 0x7ff77f2e4a50
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 7
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rsp + 0x38], 0x100fd81
lea rcx, [rsp + 0x38]
call fcn.7ff77f2e6820
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.7ff77f2e6c30
nop
lea rcx, [rbp - 0x11]
call fcn.7ff77f2e6870
lea rdx, [rbp - 0x49]
mov rcx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e4be8
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e4be8
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x8239fc90
movzx ecx, byte [r9]
inc r9
test cl, cl
je 0x7ff77f2e4be3
nop
movsx edx, cl
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
movzx ecx, byte [r9]
lea r9, [r9 + 1]
test cl, cl
jne 0x7ff77f2e4bb0
cmp r10d, 0x786dbfa3
je 0x7ff77f2e4bf0
test r11d, r11d
jne 0x7ff77f2e4b90
mov rax, qword [rax]
jmp 0x7ff77f2e4b60
mov ecx, dword [r14 + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
add rax, rbx
mov ecx, 0x7d0
call rax
mov eax, 2
jmp 0x7ff77f2e5cd4
xor r12d, r12d
mov rax, qword [0x7ff77f37bf00]
test rax, rax
jne 0x7ff77f2e4cf8
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r15, qword [rax]
mov r14, r15
nop dword [rax]
nop dword [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x7ff77f2e4cd9
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x7ff77f2e4cd9
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [rdi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
mov r9d, 0x8e71d251
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x7ff77f2e4cd4
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
movzx edx, byte [r8]
lea r8, [r8 + 1]
test dl, dl
jne 0x7ff77f2e4ca0
cmp r9d, 0x4b000bf4
je 0x7ff77f2e4eb1
test r10d, r10d
jne 0x7ff77f2e4c80
mov rax, qword [r14]
mov r14, rax
cmp rax, r15
je 0x7ff77f2e4cee
cmp qword [rax + 0x30], r12
jne 0x7ff77f2e4c50
mov rax, r12
mov qword [0x7ff77f37bf00], rax
mov ecx, 0x7d0
call rax
mov r15, qword [0x7ff77f48f400]
mov dword [rbp - 0x11], 0xb1b0b29f
mov dword [rbp - 0xd], 0x86968285
mov dword [rbp - 9], 0xecc480
mov byte [rbp - 5], 1
lea rcx, [rbp - 0x11]
call fcn.7ff77f2e6160
mov dword [rbp - 0x51], 0x9491fdfc
mov dword [rbp - 0x4d], 0x100c1c0
lea rcx, [rbp - 0x51]
call fcn.7ff77f2e77f0
lea rdx, [rbp - 0x51]
lea rcx, [rbp - 0x51]
mov r13, 0xffffffffffffffff
mov rax, r13
inc rax
cmp byte [rcx + rax], r12b
jne 0x7ff77f2e4d51
lea r8, [rbp - 0x51]
add r8, rax
lea r9, [rbp - 0x75]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e77a0
nop
cmp dword [r15 + 0x10], 0
jne 0x7ff77f2e4db4
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rbp - 0x71], 0xd6
mov byte [rbp - 0x6f], 1
lea rcx, [rbp - 0x71]
call fcn.7ff77f2e6850
lea rdx, [rbp - 0x71]
mov rcx, rbx
call fcn.7ff77f2e6c30
lea rdx, [0x7ff77f2e75a0]
mov rcx, rax
call qword [sym.imp.msvcp140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___class_std::basic_istream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_istream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov dword [r15 + 0x10], 1
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rbp - 0x29], 0xfffefdfc
mov word [rbp - 0x25], 0xc0
mov byte [rbp - 0x23], 1
lea rcx, [rbp - 0x29]
call fcn.7ff77f2e67f0
lea rdx, [rbp - 0x29]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rbp - 0x6d], 0x87
mov byte [rbp - 0x6b], 1
lea rcx, [rbp - 0x6d]
call fcn.7ff77f2e6850
lea rdx, [rbp - 0x6d]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e4ea9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e4ea9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0xb97fe996
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e4ea4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e4e70
cmp r10d, 0xb7a916d0
je 0x7ff77f2e4ecd
test r11d, r11d
jne 0x7ff77f2e4e50
mov rax, qword [rax]
jmp 0x7ff77f2e4e20
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rsi + 0x24]
add rax, r11
movzx eax, word [rax + r10*2]
mov eax, dword [rcx + rax*4]
add rax, r11
jmp 0x7ff77f2e4cf1
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 0xa
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6860
mov rdx, rax
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e4fa9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e4fa9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0x40225b2c
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e4fa4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e4f70
cmp r10d, 0x3ef15572
je 0x7ff77f2e4fb1
test r11d, r11d
jne 0x7ff77f2e4f50
mov rax, qword [rax]
jmp 0x7ff77f2e4f20
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 7
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rbp - 0x59], 0x100fd81
lea rcx, [rbp - 0x59]
call fcn.7ff77f2e6820
lea rdx, [rbp - 0x59]
mov rcx, rbx
call fcn.7ff77f2e6c30
nop
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6870
lea rdx, [rbp - 0x11]
mov rcx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.7ff77f2e6c30
mov rax, qword [0x7ff77f37be90]
test rax, rax
jne 0x7ff77f2e50e9
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r15, qword [rax]
mov r14, r15
nop word [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x7ff77f2e50c9
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x7ff77f2e50c9
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [r11 + r10*4]
mov r8d, dword [rax + rdi]
add r8, r11
mov r9d, 0x1d4ff7a9
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x7ff77f2e50c4
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
movzx edx, byte [r8]
lea r8, [r8 + 1]
test dl, dl
jne 0x7ff77f2e5090
cmp r9d, 0xbf71492c
je 0x7ff77f2e51a7
test r10d, r10d
jne 0x7ff77f2e5070
mov rax, qword [r14]
mov r14, rax
cmp rax, r15
je 0x7ff77f2e50df
cmp qword [rax + 0x30], 0
jne 0x7ff77f2e5040
mov rax, r12
mov qword [0x7ff77f37be90], rax
mov ecx, 0x514
call rax
mov r15, qword [0x7ff77f48f400]
movdqa xmm0, xmmword [0x7ff77f36fd80]
movdqu xmmword [rbp - 0x11], xmm0
mov dword [rbp - 1], 0xcfd4889f
mov word [rbp + 3], 0x100
lea rcx, [rbp - 0x11]
call fcn.7ff77f2e6130
mov dword [rbp - 0x61], 0xe1f3fdfc
mov dword [rbp - 0x5d], 0x100c1c0
lea rcx, [rbp - 0x61]
call fcn.7ff77f2e77f0
lea rdx, [rbp - 0x61]
lea rcx, [rbp - 0x61]
mov rax, r13
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x7ff77f2e5140
lea r8, [rbp - 0x61]
add r8, rax
lea r9, [rbp - 0x19]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e77a0
nop
cmp dword [r15 + 0x10], 0
jne 0x7ff77f2e51c3
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rbp - 0x69], 0xd6
mov byte [rbp - 0x67], 1
lea rcx, [rbp - 0x69]
call fcn.7ff77f2e6850
lea rdx, [rbp - 0x69]
mov rcx, rbx
call fcn.7ff77f2e6c30
lea rdx, [0x7ff77f2e75a0]
mov rcx, rax
call qword [sym.imp.msvcp140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___class_std::basic_istream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_istream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r12d, 1
mov dword [r15 + 0x10], r12d
jmp 0x7ff77f2e51c9
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rsi + 0x24]
add rax, r11
movzx eax, word [rax + r10*2]
mov eax, dword [rcx + rax*4]
add rax, r11
jmp 0x7ff77f2e50e2
mov r12d, 1
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rbp - 0x21], 0xfffefdfc
mov word [rbp - 0x1d], 0xc0
mov byte [rbp - 0x1b], 1
lea rcx, [rbp - 0x21]
call fcn.7ff77f2e67f0
lea rdx, [rbp - 0x21]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rbp - 0x65], 0x87
mov byte [rbp - 0x63], 1
lea rcx, [rbp - 0x65]
call fcn.7ff77f2e6850
lea rdx, [rbp - 0x65]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e52b9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e52b9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0xb97fe996
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e52b4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e5280
cmp r10d, 0xb7a916d0
je 0x7ff77f2e52c1
test r11d, r11d
jne 0x7ff77f2e5260
mov rax, qword [rax]
jmp 0x7ff77f2e5230
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 9
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6860
mov rdx, rax
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e53a9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e53a9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x40225b2c
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e53a4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e5370
cmp r10d, 0x3ef15572
je 0x7ff77f2e53b1
test r11d, r11d
jne 0x7ff77f2e5350
mov rax, qword [rax]
jmp 0x7ff77f2e5320
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 7
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rbp - 0x55], 0x100fd81
lea rcx, [rbp - 0x55]
call fcn.7ff77f2e6820
lea rdx, [rbp - 0x55]
mov rcx, rbx
call fcn.7ff77f2e6c30
nop
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6870
lea rdx, [rbp - 0x11]
mov rcx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.7ff77f2e6c30
lea rdx, [0x7ff77f37b0c0]
mov rcx, qword [sym.imp.msvcp140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.7ff77f2e6e20
lea rdx, [0x7ff77f37b0c0]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e68d0
mov rdx, rax
lea rcx, [0x7ff77f48f0a0]
call fcn.7ff77f3015f0
cmp byte [0x7ff77f48f2b8], 0
jne 0x7ff77f2e582b
mov r15, qword [0x7ff77f48f400]
mov dword [rbp - 0x49], 0xb1b1af8b
mov dword [rbp - 0x45], 0x8689c187
mov dword [rbp - 0x41], 0xeccb9d
mov byte [rbp - 0x3d], 1
lea rcx, [rbp - 0x49]
call fcn.7ff77f2e6160
mov dword [rsp + 0x28], 0x969f9bfc
mov dword [rsp + 0x2c], 0x100c1ac
lea rcx, [rsp + 0x28]
call fcn.7ff77f2e77f0
lea rdx, [rsp + 0x28]
lea rax, [rsp + 0x28]
nop
inc r13
cmp byte [rax + r13], 0
jne 0x7ff77f2e54a0
lea r8, [rsp + 0x28]
add r8, r13
lea r9, [rsp + 0x20]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e77a0
nop
cmp dword [r15 + 0x10], 0
jne 0x7ff77f2e5502
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rbp - 0x79], 0xd6
mov byte [rbp - 0x77], 1
lea rcx, [rbp - 0x79]
call fcn.7ff77f2e6850
lea rdx, [rbp - 0x79]
mov rcx, rbx
call fcn.7ff77f2e6c30
lea rdx, [0x7ff77f2e75a0]
mov rcx, rax
call qword [sym.imp.msvcp140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___class_std::basic_istream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_istream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov dword [r15 + 0x10], r12d
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rsp + 0x40], 0xfffefdfc
mov word [rsp + 0x44], 0xc0
mov byte [rsp + 0x46], 1
lea rcx, [rsp + 0x40]
call fcn.7ff77f2e67f0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rsp + 0x38], 0x87
mov byte [rsp + 0x3a], 1
lea rcx, [rsp + 0x38]
call fcn.7ff77f2e6850
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e55f9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e55f9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0xb97fe996
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e55f4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e55c0
cmp r10d, 0xb7a916d0
je 0x7ff77f2e5601
test r11d, r11d
jne 0x7ff77f2e55a0
mov rax, qword [rax]
jmp 0x7ff77f2e5570
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 3
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6860
mov rdx, rax
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e56e9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e56e9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0x40225b2c
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e56e4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e56b0
cmp r10d, 0x3ef15572
je 0x7ff77f2e56f1
test r11d, r11d
jne 0x7ff77f2e5690
mov rax, qword [rax]
jmp 0x7ff77f2e5660
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 7
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rsp + 0x48], 0x100fd81
lea rcx, [rsp + 0x48]
call fcn.7ff77f2e6820
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.7ff77f2e6c30
nop
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6870
lea rdx, [rbp - 0x49]
mov rcx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e57f9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e57f9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0x329a4a49
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e57f4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e57c0
cmp r10d, 0xf1de5d4c
je 0x7ff77f2e5801
test r11d, r11d
jne 0x7ff77f2e57a0
mov rax, qword [rax]
jmp 0x7ff77f2e5770
mov edx, dword [r14 + 0x24]
add rdx, rbx
movzx r8d, word [rdx + r11*2]
mov edx, dword [r14 + 0x1c]
add rdx, rbx
mov r9d, dword [rdx + r8*4]
add r9, rbx
mov ecx, 0x7d0
call r9
mov eax, r12d
jmp 0x7ff77f2e5cd4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e58c9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e58c9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + rsi]
add r9, rbx
mov r10d, 0x5a62284f
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e58c4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e5890
cmp r10d, 0xd87a1eb2
je 0x7ff77f2e58d1
test r11d, r11d
jne 0x7ff77f2e5870
mov rax, qword [rax]
jmp 0x7ff77f2e5840
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov edx, dword [rcx + rax*4]
add rdx, rbx
mov ecx, 0x514
call rdx
mov r15, qword [0x7ff77f48f400]
movdqa xmm0, xmmword [0x7ff77f36fdb0]
movdqu xmmword [rbp - 0x49], xmm0
mov dword [rbp - 0x39], 0x86ce8989
mov dword [rbp - 0x35], 0xf8df9e
mov byte [rbp - 0x31], 1
lea rcx, [rbp - 0x49]
call fcn.7ff77f2e6100
mov dword [rsp + 0x28], 0x9491fdfc
mov dword [rsp + 0x2c], 0x100c1c0
lea rcx, [rsp + 0x28]
call fcn.7ff77f2e77f0
lea rdx, [rsp + 0x28]
lea rax, [rsp + 0x28]
inc r13
cmp byte [rax + r13], 0
jne 0x7ff77f2e5944
lea r8, [rsp + 0x28]
add r8, r13
lea r9, [rsp + 0x20]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e77a0
nop
cmp dword [r15 + 0x10], 0
jne 0x7ff77f2e59aa
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rsp + 0x38], 0xd6
mov byte [rsp + 0x3a], 1
lea rcx, [rsp + 0x38]
call fcn.7ff77f2e6850
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.7ff77f2e6c30
lea rdx, [0x7ff77f2e75a0]
mov rcx, rax
call qword [sym.imp.msvcp140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___class_std::basic_istream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_istream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov dword [r15 + 0x10], r12d
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rsp + 0x40], 0xfffefdfc
mov word [rsp + 0x44], 0xc0
mov byte [rsp + 0x46], 1
lea rcx, [rsp + 0x40]
call fcn.7ff77f2e67f0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov word [rbp - 0x79], 0x87
mov byte [rbp - 0x77], 1
lea rcx, [rbp - 0x79]
call fcn.7ff77f2e6850
lea rdx, [rbp - 0x79]
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e5aa9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e5aa9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0xb97fe996
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e5aa4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e5a70
cmp r10d, 0xb7a916d0
je 0x7ff77f2e5ab1
test r11d, r11d
jne 0x7ff77f2e5a50
mov rax, qword [rax]
jmp 0x7ff77f2e5a20
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 0xa
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6860
mov rdx, rax
mov rcx, rbx
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e5b99
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e5b99
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x40225b2c
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e5b94
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e5b60
cmp r10d, 0x3ef15572
je 0x7ff77f2e5ba1
test r11d, r11d
jne 0x7ff77f2e5b40
mov rax, qword [rax]
jmp 0x7ff77f2e5b10
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 7
mov rcx, qword [r15]
call r8
mov rbx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rsp + 0x48], 0x100fd81
lea rcx, [rsp + 0x48]
call fcn.7ff77f2e6820
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.7ff77f2e6c30
nop
lea rcx, [rbp + 0xf]
call fcn.7ff77f2e6870
lea rdx, [rbp - 0x49]
mov rcx, qword [sym.imp.msvcp140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.7ff77f2e6c30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x7ff77f2e5ca9
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x7ff77f2e5ca9
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0x3dcdfea4
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x7ff77f2e5ca4
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x7ff77f2e5c70
cmp r10d, 0xfcc892a7
je 0x7ff77f2e5cb1
test r11d, r11d
jne 0x7ff77f2e5c50
mov rax, qword [rax]
jmp 0x7ff77f2e5c20
mov edx, dword [r14 + 0x24]
add rdx, rbx
movzx r8d, word [rdx + r11*2]
mov edx, dword [r14 + 0x1c]
add rdx, rbx
mov eax, dword [rdx + r8*4]
add rax, rbx
mov ecx, 0x514
call rax
xor eax, eax
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.7ff77f355090
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret