Function at 0x140008ba0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x440]
sub rsp, 0x540
mov rax, qword [0x140112040]
xor rax, rsp
mov qword [rbp + 0x430], rax
mov rdi, rdx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x58], rcx
mov qword [rbp - 0x80], rdx
mov rdx, r8
lea rcx, [rbp - 0x78]
call fcn.140005760
nop
mov r14, qword [rbp - 0x68]
mov qword [rsp + 0x30], r14
lea rcx, [r14 + 1]
call fcn.14009e868
mov qword [rsp + 0x58], rax
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 0xf
cmova rdx, qword [rbp - 0x78]
lea r8, [r14 + 1]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [r14 + 1]
call fcn.14009e868
mov qword [rsp + 0x50], rax
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 0xf
cmova rdx, qword [rbp - 0x78]
lea r8, [r14 + 1]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rax, vtable.AES.0
mov qword [rbp - 0x50], rax
mov byte [rbp - 0x48], 0
mov qword [rbp + 0x37c], 0
mov dword [rbp + 0x384], 0
lea rdx, [0x140285dc0]
cmp qword [0x140285dd8], 0xf
cmova rdx, qword [0x140285dc0]
mov rbx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x140008c94
mov rbx, qword [rdi]
test rbx, rbx
je 0x14000988f
mov eax, reloc.WS2_32.dll_recv
mov dword [rbp + 0x37c], eax
mov dword [rbp + 0x380], eax
movups xmm0, xmmword [rdx]
movups xmmword [rbp + 0x388], xmm0
movsxd r8, eax
lea rcx, [rbp + 0x3a8]
call sub.VCRUNTIME140.dll_memcpy
mov r12d, dword [rbp + 0x380]
mov ecx, dword [rbp + 0x37c]
cmp ecx, 0x10
je 0x140008cf1
mov edi, reloc.WS2_32.dll_ntohl
cmp ecx, 0x18
jne 0x140008d0f
mov eax, ntohl
cmp r12d, 0x20
cmovne edi, eax
jmp 0x140008d0f
cmp r12d, 0x10
jne 0x140008cfe
mov edi, 0xa
jmp 0x140008d0f
mov edi, reloc.WS2_32.dll_ntohl
mov eax, ntohl
cmp r12d, 0x18
cmove edi, eax
mov dword [rbp + 0x384], edi
mov dword [rsp + 0x20], edi
mov eax, r12d
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd r15, eax
xor r13d, r13d
test edi, edi
js 0x140008d6c
lea rsi, [rbp - 0x44]
test r15d, r15d
jle 0x140008d4f
mov r8, r15
shl r8, 2
xor edx, edx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
mov edi, dword [rbp + 0x384]
inc r13d
add rsi, 0x20
cmp r13d, edi
jle 0x140008d33
mov dword [rsp + 0x20], edi
mov r12d, dword [rbp + 0x380]
mov ecx, dword [rbp + 0x37c]
xor esi, esi
test edi, edi
js 0x140008db7
lea r12, [rbp + 0x19c]
nop dword [rax]
test r15d, r15d
jle 0x140008d9c
mov r8, r15
shl r8, 2
xor edx, edx
mov rcx, r12
call sub.VCRUNTIME140.dll_memset
mov edi, dword [rbp + 0x384]
inc esi
add r12, 0x20
cmp esi, edi
jle 0x140008d80
mov dword [rsp + 0x20], edi
mov r12d, dword [rbp + 0x380]
mov ecx, dword [rbp + 0x37c]
lea esi, [rdi + 1]
imul esi, r15d
mov eax, ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd r13, eax
lea r9, [rbp + 0x3c8]
test eax, eax
jle 0x140008e27
mov r10d, r13d
nop word [rax + rax]
movzx r8d, byte [rbx]
movzx eax, byte [rbx + 1]
movzx ecx, byte [rbx + 2]
movzx edx, byte [rbx + 3]
lea rbx, [rbx + 4]
shl r8d, 8
or r8d, eax
shl r8d, 8
or r8d, ecx
shl r8d, 8
or r8d, edx
mov dword [r9], r8d
lea r9, [r9 + 4]
sub r10, 1
jne 0x140008de0
mov edi, dword [rbp + 0x384]
mov dword [rsp + 0x20], edi
mov r12d, dword [rbp + 0x380]
xor r11d, r11d
xor r10d, r10d
mov rbx, r13
test r13d, r13d
jle 0x140008e95
cmp r11d, esi
jge 0x140009067
mov eax, r11d
cdq
idiv r15d
movsxd r8, eax
movsxd r9, edx
lea rcx, [r9 + r8*8]
mov eax, dword [rbp + r10*4 + 0x3c8]
mov dword [rbp + rcx*4 - 0x44], eax
mov eax, dword [rbp + 0x384]
sub eax, r8d
cdqe
lea rcx, [r9 + rax*8]
mov eax, dword [rbp + r10*4 + 0x3c8]
mov dword [rbp + rcx*4 + 0x19c], eax
inc r10
inc r11d
cmp r10, rbx
jl 0x140008e35
mov edi, dword [rbp + 0x384]
mov dword [rsp + 0x20], edi
mov r12d, dword [rbp + 0x380]
cmp r11d, esi
jge 0x140009078
lea rdi, [0x1400f2bb0]
lea r12, [0x140000000]
nop dword [rax]
mov r10d, dword [rbp + r13*4 + 0x3c4]
movzx edx, byte [rdi]
lea rdi, [rdi + 1]
movsxd r8, r10d
mov rax, r8
sar rax, 0x10
movzx ecx, al
movsx r9d, byte [rcx + r12 + 0xf1650]
xor r9d, edx
shl r9d, 8
mov rax, r8
sar rax, 8
movzx ecx, al
movzx eax, byte [rcx + r12 + 0xf1650]
xor r9d, eax
shl r9d, 8
movzx eax, r8b
movzx eax, byte [rax + r12 + 0xf1650]
xor r9d, eax
shl r9d, 8
mov eax, r10d
shr rax, 0x18
movzx eax, byte [rax + r12 + 0xf1650]
xor r9d, eax
xor dword [rbp + 0x3c8], r9d
mov ecx, 1
cmp r13d, 8
je 0x140008f60
cmp rcx, rbx
jge 0x14000900b
nop dword [rax + rax]
mov eax, dword [rbp + rcx*4 + 0x3c4]
xor dword [rbp + rcx*4 + 0x3c8], eax
inc rcx
cmp rcx, rbx
jl 0x140008f40
xor r10d, r10d
jmp 0x140009013
mov eax, dword [rbp + rcx*4 + 0x3c4]
xor dword [rbp + rcx*4 + 0x3c8], eax
inc rcx
cmp rcx, 4
jl 0x140008f60
mov eax, dword [rbp + 0x3d4]
movsxd rdx, eax
mov ecx, eax
shr rcx, 0x18
movsx r8d, byte [rcx + r12 + 0xf1650]
shl r8d, 8
mov rax, rdx
sar rax, 0x10
movzx ecx, al
movzx eax, byte [rcx + r12 + 0xf1650]
xor r8d, eax
shl r8d, 8
mov rax, rdx
sar rax, 8
movzx ecx, al
movzx eax, byte [rcx + r12 + 0xf1650]
xor r8d, eax
shl r8d, 8
movzx eax, dl
movzx eax, byte [rax + r12 + 0xf1650]
xor r8d, eax
xor dword [rbp + 0x3d8], r8d
mov ecx, 5
cmp rbx, rcx
jle 0x14000900b
nop word [rax + rax]
mov eax, dword [rbp + rcx*4 + 0x3c4]
xor dword [rbp + rcx*4 + 0x3c8], eax
inc rcx
cmp rcx, rbx
jl 0x140008ff0
xor r10d, r10d
jmp 0x140009013
xor r10d, r10d
test r13d, r13d
jle 0x14000905e
cmp r11d, esi
jge 0x140009067
mov eax, r11d
cdq
idiv r15d
movsxd r8, eax
movsxd r9, edx
lea rcx, [r9 + r8*8]
mov eax, dword [rbp + r10*4 + 0x3c8]
mov dword [rbp + rcx*4 - 0x44], eax
mov eax, dword [rbp + 0x384]
sub eax, r8d
cdqe
lea rcx, [r9 + rax*8]
mov eax, dword [rbp + r10*4 + 0x3c8]
mov dword [rbp + rcx*4 + 0x19c], eax
inc r10
inc r11d
cmp r10, rbx
jl 0x140009013
cmp r11d, esi
jl 0x140008eb0
mov edi, dword [rbp + 0x384]
mov dword [rsp + 0x20], edi
mov r12d, dword [rbp + 0x380]
mov esi, 1
cmp edi, esi
jle 0x140009120
lea rbx, [rbp + 0x1bc]
nop dword [rax]
test r15d, r15d
jle 0x140009107
mov r10, rbx
mov r11, r15
lea rdi, [0x140000000]
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r10]
movsxd r9, eax
mov edx, eax
shr rdx, 0x18
mov rax, r9
sar rax, 8
movzx ecx, al
mov r8d, dword [rdi + rdx*4 + 0xf2fd0]
xor r8d, dword [rdi + rcx*4 + 0xf1f50]
mov rax, r9
sar rax, 0x10
movzx ecx, al
xor r8d, dword [rdi + rcx*4 + 0xf1750]
movzx eax, r9b
xor r8d, dword [rdi + rax*4 + 0xf2bd0]
mov dword [r10], r8d
lea r10, [r10 + 4]
sub r11, 1
jne 0x1400090b0
mov edi, dword [rbp + 0x384]
inc esi
add rbx, 0x20
cmp esi, edi
jl 0x140009090
mov dword [rsp + 0x20], edi
mov r12d, dword [rbp + 0x380]
mov byte [rbp - 0x48], 1
mov r14, qword [rsp + 0x30]
test r14, r14
je 0x14000988f
movsxd rcx, r12d
xor edx, edx
mov rax, r14
div rcx
test rdx, rdx
jne 0x14000988f
xor esi, esi
mov dword [rsp + 0x28], esi
mov rbx, qword [rsp + 0x58]
mov qword [rsp + 0x38], rbx
mov r13, qword [rsp + 0x50]
mov qword [rsp + 0x48], r13
test rax, rax
je 0x14000988f
nop dword [rax]
mov r8, rbx
cmp byte [rbp - 0x48], 0
je 0x1400097f7
cmp r12d, 0x10
jne 0x14000953e
movzx r8d, byte [rbx]
movzx eax, byte [rbx + 1]
movzx ecx, byte [rbx + 2]
movzx edx, byte [rbx + 3]
shl r8d, 8
or r8d, eax
shl r8d, 8
or r8d, ecx
shl r8d, 8
or r8d, edx
mov eax, dword [rbp + 0x19c]
xor eax, r8d
mov dword [rsp + 0x24], eax
movzx r8d, byte [rbx + 4]
movzx eax, byte [rbx + 5]
movzx ecx, byte [rbx + 6]
movzx edx, byte [rbx + 7]
shl r8d, 8
or r8d, eax
shl r8d, 8
or r8d, ecx
shl r8d, 8
or r8d, edx
mov esi, dword [rbp + 0x1a0]
xor esi, r8d
movzx r8d, byte [rbx + 8]
movzx eax, byte [rbx + 9]
movzx ecx, byte [rbx + 0xa]
movzx edx, byte [rbx + 0xb]
shl r8d, 8
or r8d, eax
shl r8d, 8
or r8d, ecx
shl r8d, 8
or r8d, edx
mov r14d, dword [rbp + 0x1a4]
xor r14d, r8d
movzx r8d, byte [rbx + 0xc]
movzx eax, byte [rbx + 0xd]
movzx ecx, byte [rbx + 0xe]
movzx edx, byte [rbx + 0xf]
shl r8d, 8
or r8d, eax
shl r8d, 8
or r8d, ecx
shl r8d, 8
or r8d, edx
mov r15d, dword [rbp + 0x1a8]
xor r15d, r8d
cmp edi, 1
jle 0x1400093a5
lea r13, [rbp + 0x1c4]
dec edi
mov r12d, dword [rsp + 0x24]
nop
movsxd r9, r15d
movsxd rbx, r14d
movsxd r10, esi
mov edx, r12d
shr rdx, 0x18
mov rax, rbx
sar rax, 8
movzx ecx, al
lea r8, [0x140000000]
mov r11d, dword [r8 + rdx*4 + 0xf2750]
xor r11d, dword [r8 + rcx*4 + 0xf1250]
mov rax, r9
sar rax, 0x10
movzx ecx, al
xor r11d, dword [r8 + rcx*4 + 0xf0250]
movzx eax, r10b
xor r11d, dword [r8 + rax*4 + 0xf2350]
xor r11d, dword [r13 - 8]
movsxd r8, r12d
mov edx, esi
shr rdx, 0x18
mov rax, r8
sar rax, 0x10
movzx ecx, al
lea r12, [0x140000000]
mov esi, dword [r12 + rdx*4 + 0xf2750]
xor esi, dword [r12 + rcx*4 + 0xf0250]
mov rax, r9
sar rax, 8
movzx ecx, al
xor esi, dword [r12 + rcx*4 + 0xf1250]
movzx eax, bl
xor esi, dword [r12 + rax*4 + 0xf2350]
xor esi, dword [r13 - 4]
mov edx, r14d
shr rdx, 0x18
mov rax, r10
sar rax, 0x10
movzx ecx, al
mov r14d, dword [r12 + rdx*4 + 0xf2750]
xor r14d, dword [r12 + rcx*4 + 0xf0250]
mov rax, r8
sar rax, 8
movzx ecx, al
xor r14d, dword [r12 + rcx*4 + 0xf1250]
movzx eax, r9b
xor r14d, dword [r12 + rax*4 + 0xf2350]
xor r14d, dword [r13]
mov ecx, r15d
shr rcx, 0x18
sar r10, 8
movzx eax, r10b
mov r15d, dword [r12 + rcx*4 + 0xf2750]
xor r15d, dword [r12 + rax*4 + 0xf1250]
sar rbx, 0x10
movzx eax, bl
xor r15d, dword [r12 + rax*4 + 0xf0250]
movzx eax, r8b
xor r15d, dword [r12 + rax*4 + 0xf2350]
xor r15d, dword [r13 + 4]
mov r12d, r11d
lea r13, [r13 + 0x20]
sub rdi, 1
jne 0x140009260
mov dword [rsp + 0x24], r11d
mov edi, dword [rsp + 0x20]
mov r12d, dword [rbp + 0x380]
mov r13, qword [rsp + 0x48]
movsxd rax, edi
shl rax, 5
lea rbx, [rbp + 0x19c]
add rbx, rax
mov edx, dword [rbx]
movsxd r8, dword [rsp + 0x24]
mov ecx, r8d
shr rcx, 0x18
mov eax, edx
sar eax, 0x18
lea rdi, [0x140000000]
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13], al
movsxd r9, r15d
mov rax, r9
sar rax, 0x10
movzx ecx, al
mov eax, edx
sar eax, 0x10
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 1], al
movsxd r11, r14d
mov rax, r11
sar rax, 8
movzx ecx, al
mov eax, edx
sar eax, 8
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 2], al
movsxd r10, esi
movzx eax, r10b
xor dl, byte [rax + rdi + 0xf0150]
mov byte [r13 + 3], dl
mov edx, dword [rbx + 4]
mov ecx, esi
shr rcx, 0x18
mov eax, edx
sar eax, 0x18
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 4], al
mov rax, r8
sar rax, 0x10
movzx ecx, al
mov eax, edx
sar eax, 0x10
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 5], al
mov rax, r9
sar rax, 8
movzx ecx, al
mov eax, edx
sar eax, 8
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 6], al
movzx eax, r11b
xor dl, byte [rax + rdi + 0xf0150]
mov byte [r13 + 7], dl
mov edx, dword [rbx + 8]
mov ecx, r14d
shr rcx, 0x18
mov eax, edx
sar eax, 0x18
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 8], al
mov rax, r10
sar rax, 0x10
movzx ecx, al
mov eax, edx
sar eax, 0x10
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 9], al
mov rax, r8
sar rax, 8
movzx ecx, al
mov eax, edx
sar eax, 8
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 0xa], al
movzx eax, r9b
xor dl, byte [rax + rdi + 0xf0150]
mov byte [r13 + 0xb], dl
mov edx, dword [rbx + 0xc]
mov ecx, r15d
shr rcx, 0x18
mov eax, edx
sar eax, 0x18
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 0xc], al
sar r11, 0x10
movzx ecx, r11b
mov eax, edx
sar eax, 0x10
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 0xd], al
sar r10, 8
movzx ecx, r10b
mov eax, edx
sar eax, 8
xor al, byte [rcx + rdi + 0xf0150]
mov byte [r13 + 0xe], al
movzx eax, r8b
xor dl, byte [rax + rdi + 0xf0150]
mov byte [r13 + 0xf], dl
jmp 0x1400097e9
mov eax, r12d
cdq
and edx, 3
add eax, edx
sar eax, 2
movsxd rbx, eax
xor eax, eax
cmp ebx, 4
je 0x14000955d
cmp ebx, 6
setne al
inc rax
shl rax, 5
lea rcx, [0x140000000]
mov r15d, dword [rax + rcx + 0xf2b5c]
mov dword [rsp + 0x40], r15d
mov r14d, dword [rax + rcx + 0xf2b64]
mov r11d, dword [rax + rcx + 0xf2b6c]
mov dword [rsp + 0x20], r11d
lea r9, [rbp + 0x408]
xor r10d, r10d
test ebx, ebx
jle 0x1400095ef
nop dword [rax + rax]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
movzx ecx, byte [r8 + 2]
shl edx, 8
or edx, eax
shl edx, 8
or edx, ecx
shl edx, 8
mov dword [r9], edx
movzx eax, byte [r8 + 3]
lea r8, [r8 + 4]
mov rcx, r9
add r9, 4
or edx, eax
xor edx, dword [rbp + r10*4 + 0x19c]
mov dword [rcx], edx
inc r10
cmp r10, rbx
jl 0x1400095a0
mov edi, dword [rbp + 0x384]
mov r12d, dword [rbp + 0x380]
mov dword [rsp + 0x24], 1
cmp edi, 1
jle 0x140009712
lea eax, [rbx*4]
cdqe
mov qword [rsp + 0x60], rax
mov r13, 0xfffffffffffffdb4
xor r10d, r10d
test ebx, ebx
jle 0x1400096ca
mov ecx, r15d
mov r11d, r14d
sub r11d, r15d
mov edi, dword [rsp + 0x20]
sub edi, r15d
lea r12, [rbp + 0x408]
add r12, r13
lea r15, [0x140000000]
lea eax, [r11 + rcx]
cdq
idiv ebx
movsxd rax, edx
mov edx, dword [rbp + rax*4 + 0x408]
sar rdx, 8
movzx r8d, dl
lea eax, [rdi + rcx]
cdq
idiv ebx
movsxd rax, edx
movzx edx, byte [rbp + rax*4 + 0x408]
mov r9d, dword [r15 + r8*4 + 0xf1250]
xor r9d, dword [r15 + rdx*4 + 0xf2350]
mov eax, ecx
cdq
idiv ebx
movsxd rax, edx
mov edx, dword [rbp + rax*4 + 0x408]
sar rdx, 0x10
movzx eax, dl
xor r9d, dword [r15 + rax*4 + 0xf0250]
movzx eax, byte [rbp + r10*4 + 0x40b]
xor r9d, dword [r15 + rax*4 + 0xf2750]
xor r9d, dword [r12 + r10*4]
mov dword [rbp + r10*4 + 0x3e8], r9d
inc ecx
inc r10
cmp r10, rbx
jl 0x140009641
mov r15d, dword [rsp + 0x40]
mov rax, qword [rsp + 0x60]
mov r8, rax
lea rdx, [rbp + 0x3e8]
lea rcx, [rbp + 0x408]
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [rsp + 0x24]
inc ecx
mov dword [rsp + 0x24], ecx
add r13, 0x20
mov edi, dword [rbp + 0x384]
cmp ecx, edi
mov rax, qword [rsp + 0x60]
jl 0x140009615
mov r12d, dword [rbp + 0x380]
mov r11d, dword [rsp + 0x20]
mov r13, qword [rsp + 0x48]
xor r10d, r10d
test ebx, ebx
jle 0x1400097e9
movsxd rax, edi
mov r9, r13
sub r15d, r14d
sub r11d, r14d
shl rax, 5
lea rdi, [rbp + 0x19c]
add rdi, rax
lea r12, [0x140000000]
nop
mov r8d, dword [rdi + r10*4]
movzx ecx, byte [rbp + r10*4 + 0x40b]
mov eax, r8d
sar eax, 0x18
xor al, byte [rcx + r12 + 0xf0150]
mov byte [r9], al
lea eax, [r14 + r15]
cdq
idiv ebx
movsxd rax, edx
mov ecx, dword [rbp + rax*4 + 0x408]
sar rcx, 0x10
movzx edx, cl
mov eax, r8d
sar eax, 0x10
xor al, byte [rdx + r12 + 0xf0150]
mov byte [r9 + 1], al
mov eax, r14d
cdq
idiv ebx
movsxd rax, edx
mov ecx, dword [rbp + rax*4 + 0x408]
sar rcx, 8
movzx edx, cl
mov eax, r8d
sar eax, 8
xor al, byte [rdx + r12 + 0xf0150]
mov byte [r9 + 2], al
lea eax, [r14 + r11]
cdq
idiv ebx
movsxd rax, edx
movzx ecx, byte [rbp + rax*4 + 0x408]
xor r8b, byte [rcx + r12 + 0xf0150]
mov byte [r9 + 3], r8b
lea r9, [r9 + 4]
inc r14d
inc r10
cmp r10, rbx
jl 0x140009740
mov r12d, dword [rbp + 0x380]
mov rbx, qword [rsp + 0x38]
mov esi, dword [rsp + 0x28]
mov r14, qword [rsp + 0x30]
mov rcx, r13
cmp byte [rbp - 0x48], 0
je 0x140009831
test r12d, r12d
jle 0x140009831
lea r8, [rbp + 0x3a8]
sub r8, r13
mov edx, r12d
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + r8]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140009820
movsxd r8, r12d
mov rdx, rbx
lea rcx, [rbp + 0x3a8]
call sub.VCRUNTIME140.dll_memcpy
movsxd r12, dword [rbp + 0x380]
add rbx, r12
mov qword [rsp + 0x38], rbx
add r13, r12
mov qword [rsp + 0x48], r13
inc esi
mov dword [rsp + 0x28], esi
xor edx, edx
mov rax, r14
div r12
mov rcx, rax
movsxd rax, esi
cmp rax, rcx
jae 0x140009882
mov edi, dword [rbp + 0x384]
mov dword [rsp + 0x20], edi
jmp 0x140009170
mov rbx, qword [rsp + 0x50]
movzx r9d, byte [r14 + rbx - 1]
jmp 0x14000989a
mov rbx, qword [rsp + 0x50]
movzx r9d, byte [rbx + r14 - 1]
lea edx, [r14 - 1]
movsx rax, r9b
mov r8, r14
sub r8, rax
movsxd rax, edx
cmp rax, r8
jb 0x1400098fb
lea rcx, [rax + rbx]
cmp byte [rcx], r9b
jne 0x1400098cb
mov byte [rcx], 0
dec edx
dec rcx
movsxd rax, edx
cmp rax, r8
jae 0x1400098b4
jmp 0x1400098fb
mov r8, r14
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
lea rdx, [0x1400f85f4]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015d60
lea rdx, [0x140015f40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
xorps xmm0, xmm0
mov rdi, qword [rsp + 0x70]
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], 0
mov qword [rdi + 0x18], 0
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140009920
mov rdx, rbx
mov rcx, rdi
call fcn.1400052d0
mov rcx, qword [rsp + 0x58]
call fcn.14009e1f0
mov rcx, rbx
call fcn.14009e1f0
nop
lea rcx, [rbp - 0x78]
call fcn.140004fe0
nop
mov rcx, qword [rsp + 0x78]
call fcn.140004fe0
mov rax, rdi
mov rcx, qword [rbp + 0x430]
xor rcx, rsp
call fcn.14009e1d0
mov rbx, qword [rsp + 0x598]
add rsp, 0x540
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret