Function at 0x180021d80
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x188
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xf0], xmm6
mov qword [rbp + 0xe8], 0xfffffffffffffffe
mov rsi, rdx
mov rbx, rcx
pxor xmm0, xmm0
movdqa xmmword [rbp - 0x10], xmm0
movdqa xmmword [rbp - 0x20], xmm0
lea rdi, [rcx + 0x48]
lea r14, [rcx + 0x98]
lea r13, [0x180042280]
movabs r12, 0x3800000000000000
xor r15d, r15d
test r15b, 1
jne 0x180021fc5
mov eax, dword [rbx + 0x40]
dec eax
cmp eax, 0xe
ja case.0x180021e00.10
movsxd rax, dword [r13 + rax*4]
add rax, r13
jmp rax
mov rcx, rsi
mov rdx, 0xffffffffffffffff
call fcn.1800296c0
test al, al
je 0x180022b72
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
cmp eax, 0xa
je 0x1800220d1
mov rax, qword [rbp - 8]
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
mov qword [rbp + 0xc8], rdx
mov qword [rbp + 0xd0], rax
mov r8d, 1
lea rcx, [rbp - 0x20]
lea rdx, [rbp + 0xc8]
call fcn.180019d70
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
lea rcx, [rax + 1]
mov r8d, ecx
shr r8d, 5
lea r8, [rdx + r8*4]
and ecx, 0x1f
mov qword [rbp], r8
mov qword [rbp + 8], rcx
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x68], rax
lea rcx, [rbp + 0x60]
mov rdx, rbp
mov r8b, 1
call fcn.18001a260
jmp 0x180021de0
mov rcx, rsi
mov rdx, 0xffffffffffffffff
call fcn.180028e30
test al, al
je 0x180022b72
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
cmp eax, 4
jne 0x180021fcd
mov rcx, rsi
mov rdx, r14
call fcn.180029390
test al, al
je 0x180022b72
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
cmp eax, 0xc
jne 0x180022518
mov rax, qword [rbp - 8]
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
mov qword [rbp + 0xc8], rdx
mov qword [rbp + 0xd0], rax
mov r8d, 1
lea rcx, [rbp - 0x20]
lea rdx, [rbp + 0xc8]
call fcn.180019d70
mov rcx, rax
shr rcx, 5
lea rdx, [rcx + r12]
test rax, rax
cmovns rdx, rcx
shl rdx, 2
add rdx, qword [rbp - 0x20]
and eax, 0x1f
lea rcx, [rax + 1]
mov r8d, ecx
shr r8d, 5
lea r8, [rdx + r8*4]
and ecx, 0x1f
mov qword [rbp], r8
mov qword [rbp + 8], rcx
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x68], rax
lea rcx, [rbp + 0x60]
mov rdx, rbp
xor r8d, r8d
call fcn.18001a260
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
jmp 0x180021de0
xor r15d, r15d
jmp 0x1800220e1
cmp eax, 0xb
jne 0x18002246f
mov rcx, rsi
call fcn.180029080
jmp 0x1800220d9
mov rax, qword [rbx + 0xc0]
mov qword [rbp + 0x60], rax
mov rcx, rsi
mov rdx, rbp
lea r8, [rbp + 0x60]
xor r9d, r9d
call fcn.18002e450
jmp 0x1800220e1
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x50], r14
movsd xmm6, qword [rbx + 0xd0]
movsd qword [rbp], xmm6
mov r14, rbp
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__dtest]
test ax, ax
jg 0x180022c74
movsd qword [rbp + 0x60], xmm6
mov rsi, qword [rbp - 0x48]
mov rcx, rsi
mov rdx, r14
lea r8, [rbp + 0x60]
xor r9d, r9d
call fcn.18002da40
mov r14, qword [rbp - 0x50]
jmp 0x1800220e1
mov rax, qword [rbx + 0xc8]
mov qword [rbp + 0x60], rax
mov rcx, rsi
mov rdx, rbp
lea r8, [rbp + 0x60]
xor r9d, r9d
call fcn.18002ec10
jmp 0x1800220e1
mov byte [rbp + 0x60], 0
mov rcx, rsi
mov rdx, rbp
lea r8, [rbp + 0x60]
xor r9d, r9d
call fcn.18002dda0
jmp 0x1800220e1
mov byte [rbp + 0x60], 1
mov rcx, rsi
mov rdx, rbp
lea r8, [rbp + 0x60]
xor r9d, r9d
call fcn.18002dda0
jmp 0x1800220e1
mov rcx, rsi
mov rdx, rbp
mov r8, r14
xor r9d, r9d
call fcn.18002e7b0
jmp 0x1800220e1
mov qword [rbp + 0x60], 0
mov rcx, rsi
mov rdx, rbp
lea r8, [rbp + 0x60]
xor r9d, r9d
call fcn.18002e100
jmp 0x1800220e1
mov rcx, rsi
call fcn.180029910
test al, al
je 0x180022b72
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x180022691
mov eax, ecx
and eax, 0x1f
lea rdx, [rax - 1]
shr rdx, 5
sub rax, 1
mov r8, 0xffffffffffffffff
cmovb rdx, r8
mov r8, rcx
shr r8, 5
lea r9, [r8 + r12]
test rcx, rcx
cmovns r9, r8
shl r9, 2
add r9, qword [rbp - 0x20]
mov ecx, dword [r9 + rdx*4]
mov edx, ecx
and edx, 0x25d0f606
or edx, 0x8240100
mov r8d, ecx
and r8d, 0xda2f09f9
btc r8d, eax
xor r8d, edx
xor ecx, r8d
xor r8d, 0x8240100
xor ecx, 0xf7dbfeff
or ecx, r8d
cmp ecx, 0xffffffff
je 0x18002217f
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
cmp eax, 0xd
jne 0x1800221e3
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
jmp 0x180021de0
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
cmp eax, 0xb
je 0x1800221f6
cmp eax, 0xd
jne 0x180022699
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
cmp eax, 4
jne 0x180022779
mov rcx, rsi
mov rdx, r14
call fcn.180029390
test al, al
je 0x180022b72
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
cmp eax, 0xc
jne 0x1800228b3
mov rcx, rdi
call fcn.18001f2f0
mov dword [rbx + 0x40], eax
jmp 0x180021de0
cmp eax, 0xa
jne 0x180022bcb
mov rcx, rsi
call fcn.180029910
jmp 0x1800221fe
mov rcx, rsi
call fcn.180029080
test al, al
je 0x180022b72
mov rax, qword [rbp - 8]
mov ecx, eax
and ecx, 0x1f
lea rdx, [rcx - 1]
shr rdx, 5
sub rcx, 1
mov r8, 0xffffffffffffffff
cmovb rdx, r8
mov r8, rax
shr r8, 5
lea r9, [r8 + r12]
test rax, rax
cmovns r9, r8
shl r9, 2
add r9, qword [rbp - 0x20]
lea rax, [r9 + rdx*4]
and ecx, 0x1f
mov qword [rbp], rax
mov qword [rbp + 8], rcx
lea rcx, [rbp - 0x20]
lea rdx, [rbp + 0x60]
mov r8, rbp
call fcn.18002ef70
mov r15b, 1
jmp 0x180021de0
movabs rcx, 0x883655d4218d2019
add rcx, qword [0x18004dbb0]
call fcn.180037380
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbd0]
lea rcx, [rbp + 0xc8]
call fcn.180002250
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xc8]
mov rcx, rbx
xor r8d, r8d
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call fcn.180024cb0
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, rsi
call fcn.180023980
jmp 0x180022661
lea r14, [rbx + 0x68]
cmp qword [rbx + 0x68], 1
jne 0x1800225c1
movabs rcx, 0x883655d4218d2123
add rcx, qword [0x18004dbb0]
call fcn.180037a40
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbd8]
lea rcx, [rbp + 0x60]
call fcn.180002250
mov rax, qword [r14 + 0x10]
mov qword [rbp + 0xb0], rax
movups xmm0, xmmword [r14]
movaps xmmword [rbp + 0xa0], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0xa0]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0xc8]
mov rcx, rdi
call fcn.180024cb0
mov rdx, qword [r14]
lea r8, [rbp + 0xc8]
mov r9, rbp
mov rcx, rsi
call fcn.180023980
mov esi, eax
lea rcx, [rbp + 0xc8]
call fcn.180001600
mov rcx, rbp
call fcn.180024fb0
lea rcx, [rbp + 0x60]
jmp 0x180022687
movabs rcx, 0x883655d4218d2019
add rcx, qword [0x18004dbb0]
call fcn.180037380
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbd0]
lea rcx, [rbp + 0xc8]
call fcn.180002250
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xc8]
mov rcx, rbx
mov r8d, 0x10
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call fcn.180024cb0
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, rsi
call fcn.180023980
jmp 0x180022661
movabs rcx, 0x883655d4218d204e
add rcx, qword [0x18004dbb0]
call fcn.180037620
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbb8]
lea rcx, [rbp + 0xc8]
call fcn.180002250
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xc8]
mov rcx, rbx
mov r8d, 4
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call fcn.180024cb0
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, rsi
call fcn.180023980
jmp 0x180022661
movabs rcx, 0x883655d4218d2091
add rcx, qword [0x18004dbb0]
call fcn.180037680
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbc0]
lea rcx, [rbp + 0xc8]
call fcn.180002250
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xc8]
mov rcx, rbx
mov r8d, 0xc
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call fcn.180024cb0
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, rsi
call fcn.180023980
jmp 0x180022661
movabs rcx, 0x883655d4218d2019
add rcx, qword [0x18004dbb0]
call fcn.180037380
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbd0]
lea rcx, [rbp + 0xc8]
call fcn.180002250
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xc8]
mov rcx, rbx
mov r8d, 0x10
call fcn.180023f90
mov rax, qword [r14 + 0x10]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [r14]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call fcn.180024cb0
mov rdx, qword [r14]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, rsi
call fcn.180023980
mov esi, eax
lea rcx, [rbp + 0xa0]
call fcn.180001600
mov rcx, rbp
call fcn.180024fb0
lea rcx, [rbp + 0x60]
call fcn.180001600
lea rcx, [rbp + 0xc8]
call fcn.180001600
jmp 0x180022b74
mov sil, 1
jmp 0x180022b74
movabs rcx, 0x883655d4218d2201
add rcx, qword [0x18004dbb0]
call fcn.180037b90
movabs r14, 0x883655d4218cf820
add r14, qword [0x18004dbe8]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xa0], xmm0
movdqa xmmword [rbp + 0xb0], xmm0
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
lea rcx, [rbp + 0xa0]
mov rdx, r14
mov r8, rax
call fcn.180013420
lea rdx, [rbp + 0xc8]
lea r9, [rbp + 0xa0]
mov rcx, rbx
mov r8d, 0xb
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x30], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x40]
lea r9, [rbp + 0xc8]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.180024cb0
mov byte [rsi + 0x68], 1
cmp byte [rsi + 0xb0], 0
je 0x180022a5a
mov rsi, rbp
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.18002f110
lea rdx, [0x180044850]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
cmp byte [0x18004fcce], 0
jne 0x1800227e9
mov rdx, qword [0x18004dbb0]
movabs rax, 0x883655d4218d204e
add rax, rdx
movabs rcx, 0x883655d4218d2067
add rcx, rdx
xor edx, edx
lea r8, [0x18004fcc3]
movzx r9d, byte [rcx + rdx]
mov r10d, r9d
xor r10b, 0x43
mov r11d, r9d
and r11b, 0xe1
xor r9b, 0xa2
and r9b, r10b
xor r11b, 0xa0
or r11b, r9b
xor r11b, byte [rax + rdx]
xor r11b, 0xa2
mov byte [rdx + r8], r11b
inc rdx
cmp rdx, 0xb
jne 0x1800227ac
mov byte [0x18004fcce], 1
movabs r14, 0x883655d4218cf820
add r14, qword [0x18004dbb8]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xa0], xmm0
movdqa xmmword [rbp + 0xb0], xmm0
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
lea rcx, [rbp + 0xa0]
mov rdx, r14
mov r8, rax
call fcn.180013420
lea rdx, [rbp + 0xc8]
lea r9, [rbp + 0xa0]
mov rcx, rbx
mov r8d, 4
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x30], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x40]
lea r9, [rbp + 0xc8]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.180024cb0
mov byte [rsi + 0x68], 1
cmp byte [rsi + 0xb0], 0
je 0x180022a5a
mov rsi, rbp
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.18002f110
lea rdx, [0x180044850]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
cmp byte [0x18004fce1], 0
jne 0x1800229ae
mov rdx, qword [0x18004dbb0]
movabs rax, 0x883655d4218d2091
add rax, rdx
movabs rcx, 0x883655d4218d20ad
add rcx, rdx
movabs r8, 0x883655d4218d20be
add r8, rdx
lea rdx, [0x18004fcd0]
cmp r8, rdx
jbe 0x18002290b
lea r8, [0x18004fce1]
cmp rax, r8
jae 0x18002290b
xor r8d, r8d
jmp 0x180022965
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rax]
pcmpeqd xmm2, xmm2
pxor xmm2, xmm0
pandn xmm0, xmm1
por xmm2, xmm1
movdqa xmm1, xmmword [0x18003f750]
movdqa xmm3, xmm0
pxor xmm3, xmm1
movdqa xmm4, xmmword [0x18003fce0]
movdqa xmm5, xmm2
pxor xmm5, xmm4
pxor xmm0, xmm4
pand xmm0, xmm5
pxor xmm2, xmm1
pand xmm2, xmm3
por xmm2, xmm0
movdqa xmmword [0x18004fcd0], xmm2
mov r8d, 0x10
movzx r9d, byte [rcx + r8]
movzx r10d, byte [rax + r8]
not r9b
mov r11d, r10d
and r11b, r9b
or r9b, r10b
mov r10d, r11d
xor r10b, 3
mov r14d, r9d
xor r14b, 0xfc
xor r11b, 0xfc
and r11b, r14b
xor r9b, 3
and r9b, r10b
or r9b, r11b
mov byte [r8 + rdx], r9b
inc r8
cmp r8, 0x11
jne 0x180022965
mov byte [0x18004fce1], 1
movabs r14, 0x883655d4218cf820
add r14, qword [0x18004dbc0]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0xa0], xmm0
movdqa xmmword [rbp + 0xb0], xmm0
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
lea rcx, [rbp + 0xa0]
mov rdx, r14
mov r8, rax
call fcn.180013420
lea rdx, [rbp + 0xc8]
lea r9, [rbp + 0xa0]
mov rcx, rbx
mov r8d, 0xc
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp - 0x30], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x60]
lea r8, [rbp - 0x40]
lea r9, [rbp + 0xc8]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.180024cb0
mov byte [rsi + 0x68], 1
cmp byte [rsi + 0xb0], 0
jne 0x180022d07
mov rax, qword [rbp + 0x58]
cmp rax, 0x10
jb 0x180022a99
mov rcx, qword [rbp + 0x40]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180022a94
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x180022d01
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.180039c44
lea rax, vtable.nlohmann::json_abi_v3_11_3::detail::exception.0
mov qword [rbp + 0x60], rax
lea rsi, vtable.std::exception.0
mov qword [rbp + 0x80], rsi
lea rcx, [rbp + 0x88]
call sub.VCRUNTIME140.dll___std_exception_destroy
mov qword [rbp + 0x60], rsi
lea rcx, [rbp + 0x68]
call sub.VCRUNTIME140.dll___std_exception_destroy
mov rax, qword [rbp + 0xe0]
cmp rax, 0x10
jb 0x180022b10
mov rcx, qword [rbp + 0xc8]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180022b0b
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x180022d01
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.180039c44
mov qword [rbp + 0xd8], 0
mov qword [rbp + 0xe0], 0xf
mov byte [rbp + 0xc8], 0
mov rax, qword [rbp + 0xb8]
cmp rax, 0x10
jb 0x180022b72
mov rcx, qword [rbp + 0xa0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x180022b6d
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x180022d01
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.180039c44
xor esi, esi
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x180022bae
mov rdx, qword [rbp - 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x180022ba9
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x180022d01
add rdx, 0x27
mov rcx, rax
call fcn.180039c44
mov eax, esi
movaps xmm6, xmmword [rbp + 0xf0]
add rsp, 0x188
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
movabs rcx, 0x883655d4218d21bd
add rcx, qword [0x18004dbb0]
call fcn.180037ad0
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbe0]
lea rcx, [rbp + 0xc8]
call fcn.180002250
lea rdx, [rbp + 0x60]
lea r9, [rbp + 0xc8]
mov rcx, rbx
mov r8d, 0xa
call fcn.180023f90
mov rax, qword [rbx + 0x78]
mov qword [rbp + 0x50], rax
movdqu xmm0, xmmword [rbx + 0x68]
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rsp + 0x20], 0
mov rcx, rbp
lea r8, [rbp + 0x40]
lea r9, [rbp + 0x60]
mov edx, 0x65
call fcn.1800239e0
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call fcn.180024cb0
add rbx, 0x68
mov rdx, qword [rbx]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, rsi
call fcn.180023980
jmp 0x180022661
mov byte [rbp + 0x40], 0x27
lea rdx, [rbp + 0xc8]
mov rcx, rdi
call fcn.180024cb0
movabs rcx, 0x883655d4218d20d9
add rcx, qword [0x18004dbb0]
call fcn.180037760
movabs rdx, 0x883655d4218cf820
add rdx, qword [0x18004dbc8]
lea rcx, [rbp + 0x60]
lea r8, [rbp + 0xc8]
lea r9, [rbp + 0x40]
call fcn.180029ea0
mov rcx, rbp
lea r8, [rbp + 0x60]
mov edx, 0x196
xor r9d, r9d
call fcn.180029b70
lea rdx, [rbp + 0xa0]
mov rcx, rdi
call fcn.180024cb0
mov rdx, qword [rbx + 0x68]
lea r8, [rbp + 0xa0]
mov r9, rbp
mov rcx, qword [rbp - 0x48]
call fcn.180029b10
jmp 0x180022661
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov rsi, rbp
lea rdx, [rbp + 0x60]
mov rcx, rsi
call fcn.18002f110
lea rdx, [0x180044850]
mov rcx, rsi
call sub.VCRUNTIME140.dll__CxxThrowException
int3