Function at 0x18018d500
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x158]
sub rsp, 0x230
mov qword [rbp + 0x108], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov rbx, rcx
xor r13d, r13d
test edx, edx
jne 0x18018d54e
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x18], r13
mov qword [rcx + 0x10], r13
jmp 0x18018e402
mov r15d, 1
test r15b, dl
je 0x18018d62b
lea ecx, [r15 + 0x13]
mov dword [rbp - 0x28], ecx
lea r10d, [r15 + 0x43]
mov word [rbp - 0x24], r10w
lea ecx, [r15 + 0x54]
mov word [rbp - 0x22], cx
lea edx, [rcx - 2]
mov word [rbp - 0x20], dx
lea r8d, [r15 + 0x50]
mov word [rbp - 0x1e], r8w
lea eax, [rcx - 0xa]
mov word [rbp - 0x1c], ax
lea eax, [rcx + 5]
mov word [rbp - 0x1a], ax
lea edx, [rcx + 6]
mov word [rbp - 0x18], dx
mov word [rbp - 0x16], cx
lea ecx, [rax - 3]
mov word [rbp - 0x14], cx
mov word [rbp - 0x12], cx
mov word [rbp - 0x10], r8w
lea ecx, [rax - 0x13]
mov word [rbp - 0xe], cx
mov word [rbp - 0xc], cx
xor eax, eax
mov word [rbp - 0xa], ax
movzx eax, word [rbp - 0x24]
mov rdx, r13
lea r8d, [r15 + 0xc]
movzx eax, word [rbp + rdx*2 - 0x24]
mov ecx, dword [rbp - 0x28]
xor cx, ax
mov word [rbp + rdx*2 - 0x24], cx
add rdx, r15
cmp rdx, r8
jb 0x18018d5ca
mov word [rbp - 0xa], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp - 0x24]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018d5fd
lea rdx, [rbp - 0x24]
mov rcx, rbx
call fcn.18007b5dc
nop
lea rcx, [rbp - 0x24]
mov r8d, 0x1c
xor edx, edx
call qword [sym.imp.VCRUNTIME140.dll_memset]
jmp 0x18018e40f
mov r9d, 2
test r9b, dl
je 0x18018d78e
lea ecx, [r9 + 0x73]
mov dword [rsp + 0x20], ecx
mov eax, dword [rsp + 0x20]
xor ax, 0x50
mov word [rsp + 0x24], ax
mov eax, dword [rsp + 0x20]
add ax, r15w
xor ax, 0x41
mov word [rsp + 0x26], ax
mov eax, dword [rsp + 0x20]
add ax, r9w
xor ax, 0x47
mov word [rsp + 0x28], ax
mov eax, dword [rsp + 0x20]
add ax, 3
mov r9w, 0x45
xor ax, r9w
mov word [rsp + 0x2a], ax
mov eax, dword [rsp + 0x20]
add ax, 4
xor ax, 0x5f
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0x20]
add ax, 5
xor ax, 0x52
mov word [rsp + 0x2e], ax
mov eax, dword [rsp + 0x20]
add ax, 6
xor ax, r9w
mov word [rsp + 0x30], ax
mov eax, dword [rsp + 0x20]
add ax, 7
xor ax, 0x41
mov word [rsp + 0x32], ax
mov eax, dword [rsp + 0x20]
add ax, 8
xor ax, 0x44
mov word [rsp + 0x34], ax
mov eax, dword [rsp + 0x20]
add ax, 9
xor ax, 0x4f
mov word [rsp + 0x36], ax
mov eax, dword [rsp + 0x20]
add ax, 0xa
xor ax, 0x4e
mov word [rsp + 0x38], ax
mov eax, dword [rsp + 0x20]
add ax, 0xb
xor ax, 0x4c
mov word [rsp + 0x3a], ax
mov eax, dword [rsp + 0x20]
add ax, 0xc
xor ax, 0x59
mov word [rsp + 0x3c], ax
xor eax, eax
mov word [rsp + 0x3e], ax
movzx eax, word [rsp + 0x24]
mov rdx, r13
lea r8d, [rcx - 0x68]
movzx eax, word [rsp + rdx*2 + 0x24]
mov ecx, dword [rsp + 0x20]
add cx, dx
xor cx, ax
mov word [rsp + rdx*2 + 0x24], cx
add rdx, r15
cmp rdx, r8
jb 0x18018d733
mov word [rsp + 0x3e], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rsp + 0x24]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018d76c
lea rdx, [rsp + 0x24]
mov rcx, rbx
call fcn.18007b5dc
nop
lea rcx, [rsp + 0x24]
jmp 0x18018d618
test dl, 4
je 0x18018d862
mov ecx, 0x4f
mov dword [rbp - 8], ecx
lea r8d, [rcx - 0x30]
mov word [rbp - 4], r8w
lea r10d, [rcx - 0x41]
mov word [rbp - 2], r10w
lea r8d, [rcx - 0x47]
mov word [rbp], r8w
lea edx, [rcx - 0x45]
mov word [rbp + 2], dx
lea esi, [rcx - 0x3f]
mov word [rbp + 4], si
lea eax, [rcx - 0x32]
mov word [rbp + 6], ax
mov word [rbp + 8], dx
mov word [rbp + 0xa], r10w
lea ecx, [rdx + 1]
mov word [rbp + 0xc], cx
lea ecx, [rdx + 0xe]
mov word [rbp + 0xe], cx
mov word [rbp + 0x10], ax
lea edi, [rdx - 4]
mov word [rbp + 0x12], di
lea ecx, [rdx + 0x11]
mov word [rbp + 0x14], cx
mov word [rbp + 0x16], dx
xor eax, eax
mov word [rbp + 0x18], ax
movzx eax, word [rbp - 4]
mov rdx, r13
movzx eax, word [rbp + rdx*2 - 4]
mov ecx, dword [rbp - 8]
xor cx, ax
mov word [rbp + rdx*2 - 4], cx
add rdx, r15
cmp rdx, r10
jb 0x18018d809
mov word [rbp + 0x18], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp - 4]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018d83c
lea rdx, [rbp - 4]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8d, 0x1e
lea rcx, [rbp - 4]
jmp 0x18018d61e
mov r8d, 8
test r8b, dl
je 0x18018d93d
lea ecx, [r8 + 0x44]
mov dword [rbp + 0x1c], ecx
lea eax, [rcx - 0x30]
mov word [rbp + 0x20], ax
lea r8d, [rcx - 0x3f]
mov word [rbp + 0x22], r8w
lea ecx, [rax - 0x11]
mov word [rbp + 0x24], cx
lea edx, [rax - 0x13]
mov word [rbp + 0x26], dx
lea ecx, [rax - 9]
mov word [rbp + 0x28], cx
lea ecx, [rax - 1]
mov word [rbp + 0x2a], cx
lea edi, [rax + 2]
mov word [rbp + 0x2c], di
lea ecx, [rax - 0x17]
mov word [rbp + 0x2e], cx
lea ecx, [rax - 4]
mov word [rbp + 0x30], cx
mov word [rbp + 0x32], dx
lea ecx, [rax - 0xd]
mov word [rbp + 0x34], cx
lea ecx, [rax - 0x19]
mov word [rbp + 0x36], cx
mov word [rbp + 0x38], ax
lea ecx, [rax - 7]
mov word [rbp + 0x3a], cx
xor eax, eax
mov word [rbp + 0x3c], ax
movzx eax, word [rbp + 0x20]
mov rdx, r13
lea r10d, [r8 + 1]
movzx eax, word [rbp + rdx*2 + 0x20]
mov ecx, dword [rbp + 0x1c]
xor cx, ax
mov word [rbp + rdx*2 + 0x20], cx
add rdx, r15
cmp rdx, r10
jb 0x18018d8e7
mov word [rbp + 0x3c], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp + 0x20]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018d91a
lea rdx, [rbp + 0x20]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8, rdi
lea rcx, [rbp + 0x20]
jmp 0x18018d61e
mov esi, 0x10
test sil, dl
je 0x18018da93
lea eax, [rsi + 0x52]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
xor ax, 0x50
mov word [rsp + 0x44], ax
mov eax, dword [rsp + 0x40]
add ax, r15w
xor ax, 0x41
mov word [rsp + 0x46], ax
mov eax, dword [rsp + 0x40]
add ax, r9w
xor ax, 0x47
mov word [rsp + 0x48], ax
mov eax, dword [rsp + 0x40]
add ax, 3
mov r9w, 0x45
xor ax, r9w
mov word [rsp + 0x4a], ax
mov eax, dword [rsp + 0x40]
add ax, 4
xor ax, 0x5f
mov word [rsp + 0x4c], ax
mov eax, dword [rsp + 0x40]
add ax, 5
xor ax, r9w
mov word [rsp + 0x4e], ax
mov eax, dword [rsp + 0x40]
add ax, 6
xor ax, 0x58
mov word [rsp + 0x50], ax
mov eax, dword [rsp + 0x40]
add ax, 7
xor ax, r9w
mov word [rsp + 0x52], ax
mov eax, dword [rsp + 0x40]
add ax, r8w
xor ax, 0x43
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x40]
add ax, 9
xor ax, 0x55
mov word [rsp + 0x56], ax
mov eax, dword [rsp + 0x40]
add ax, 0xa
xor ax, 0x54
mov word [rsp + 0x58], ax
mov eax, dword [rsp + 0x40]
add ax, 0xb
xor ax, r9w
mov word [rsp + 0x5a], ax
xor eax, eax
mov word [rsp + 0x5c], ax
movzx eax, word [rsp + 0x44]
mov rdx, r13
lea r8d, [rsi - 4]
movzx eax, word [rsp + rdx*2 + 0x44]
mov ecx, dword [rsp + 0x40]
add cx, dx
xor cx, ax
mov word [rsp + rdx*2 + 0x44], cx
add rdx, r15
cmp rdx, r8
jb 0x18018da32
mov word [rsp + 0x5c], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rsp + 0x44]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018da6b
lea rdx, [rsp + 0x44]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8d, 0x1a
lea rcx, [rsp + 0x44]
jmp 0x18018d61e
test dl, 0x20
je 0x18018db71
mov edx, 0x53
mov word [rbp + 0x40], dx
lea r10d, [rdx - 0xf]
mov word [rbp + 0x42], r10w
lea eax, [rdx - 9]
mov word [rbp + 0x44], ax
lea r8d, [rdx - 0xb]
mov word [rbp + 0x46], r8w
lea eax, [rdx + 0xf]
mov word [rbp + 0x48], ax
mov word [rbp + 0x4a], r8w
lea edx, [rax - 7]
mov word [rbp + 0x4c], dx
mov word [rbp + 0x4e], r8w
lea edx, [rax - 0x1c]
mov word [rbp + 0x50], dx
lea ecx, [rax - 0xa]
mov word [rbp + 0x52], cx
lea ecx, [rax - 0xb]
mov word [rbp + 0x54], cx
mov word [rbp + 0x56], r8w
mov word [rbp + 0x58], ax
lea ecx, [rax - 0xd]
mov word [rbp + 0x5a], cx
mov word [rbp + 0x5c], r8w
mov word [rbp + 0x5e], r10w
lea ecx, [rax - 0x1b]
mov word [rbp + 0x60], cx
mov word [rbp + 0x62], r13w
movzx eax, word [rbp + 0x40]
mov rdx, r13
lea ecx, [r10 - 0x41]
lea r8d, [r10 - 0x33]
movzx eax, word [rbp + rdx*2 + 0x40]
sub ax, cx
mov word [rbp + rdx*2 + 0x40], ax
add rdx, r15
cmp rdx, r8
jb 0x18018db20
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp + 0x40]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018db4b
lea rdx, [rbp + 0x40]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8d, 0x24
lea rcx, [rbp + 0x40]
jmp 0x18018d61e
mov eax, 0x40
test al, dl
je 0x18018dd3d
lea edx, [rax + 6]
mov dword [rbp - 0x80], edx
mov eax, dword [rbp - 0x80]
xor ax, 0x50
mov word [rbp - 0x7c], ax
mov eax, dword [rbp - 0x80]
add ax, r15w
xor ax, 0x41
mov word [rbp - 0x7a], ax
mov eax, dword [rbp - 0x80]
add ax, r9w
xor ax, 0x47
mov word [rbp - 0x78], ax
mov eax, dword [rbp - 0x80]
add ax, 3
mov r9w, 0x45
xor ax, r9w
mov word [rbp - 0x76], ax
mov eax, dword [rbp - 0x80]
add ax, 4
xor ax, 0x5f
mov word [rbp - 0x74], ax
mov eax, dword [rbp - 0x80]
add ax, 5
xor ax, r9w
mov word [rbp - 0x72], ax
mov eax, dword [rbp - 0x80]
add ax, 6
xor ax, 0x58
mov word [rbp - 0x70], ax
mov eax, dword [rbp - 0x80]
add ax, 7
xor ax, r9w
mov word [rbp - 0x6e], ax
mov eax, dword [rbp - 0x80]
add ax, r8w
xor ax, 0x43
mov word [rbp - 0x6c], ax
mov eax, dword [rbp - 0x80]
add ax, 9
xor ax, 0x55
mov word [rbp - 0x6a], ax
mov eax, dword [rbp - 0x80]
add ax, 0xa
lea r11d, [rdx + 0xe]
xor ax, r11w
mov word [rbp - 0x68], ax
mov eax, dword [rbp - 0x80]
add ax, 0xb
xor ax, r9w
mov word [rbp - 0x66], ax
mov eax, dword [rbp - 0x80]
add ax, 0xc
xor ax, 0x5f
mov word [rbp - 0x64], ax
mov eax, dword [rbp - 0x80]
add ax, 0xd
lea edi, [rdx + 0xc]
xor ax, di
mov word [rbp - 0x62], ax
mov eax, dword [rbp - 0x80]
add ax, 0xe
xor ax, r9w
mov word [rbp - 0x60], ax
mov eax, dword [rbp - 0x80]
add ax, 0xf
xor ax, 0x41
mov word [rbp - 0x5e], ax
mov eax, dword [rbp - 0x80]
add ax, si
xor ax, 0x44
mov word [rbp - 0x5c], ax
mov eax, dword [rbp - 0x80]
add ax, 0x11
xor ax, 0x57
mov word [rbp - 0x5a], ax
mov eax, dword [rbp - 0x80]
add ax, 0x12
xor ax, di
mov word [rbp - 0x58], ax
mov eax, dword [rbp - 0x80]
add ax, 0x13
xor ax, 0x49
mov word [rbp - 0x56], ax
mov eax, dword [rbp - 0x80]
add ax, 0x14
xor ax, r11w
mov word [rbp - 0x54], ax
mov eax, dword [rbp - 0x80]
add ax, 0x15
xor ax, r9w
mov word [rbp - 0x52], ax
xor eax, eax
mov word [rbp - 0x50], ax
movzx eax, word [rbp - 0x7c]
mov rdx, r13
movzx eax, word [rbp + rdx*2 - 0x7c]
mov ecx, dword [rbp - 0x80]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 - 0x7c], cx
add rdx, r15
cmp rdx, 0x16
jb 0x18018dce0
mov word [rbp - 0x50], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp - 0x7c]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018dd17
lea rdx, [rbp - 0x7c]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8d, 0x2e
lea rcx, [rbp - 0x7c]
jmp 0x18018d61e
test dl, dl
jns 0x18018dea0
mov ecx, 0x76
mov dword [rbp + 0x88], ecx
lea eax, [rcx - 0x50]
mov word [rbp + 0x8c], ax
lea ecx, [rax + 0x11]
mov word [rbp + 0x8e], cx
lea ecx, [rax + 0xb]
mov word [rbp + 0x90], cx
lea r10d, [rax + 0xd]
mov word [rbp + 0x92], r10w
lea edx, [rax + 3]
mov word [rbp + 0x94], dx
mov word [rbp + 0x96], r10w
lea edi, [rax + 8]
mov word [rbp + 0x98], di
mov word [rbp + 0x9a], r10w
lea r9d, [rax + 0xf]
mov word [rbp + 0x9c], r9w
lea r8d, [rax - 3]
mov word [rbp + 0x9e], r8w
lea ecx, [rax - 4]
mov word [rbp + 0xa0], cx
mov word [rbp + 0xa2], r10w
mov word [rbp + 0xa4], dx
lea edx, [rax - 5]
mov word [rbp + 0xa6], dx
lea r8d, [rax - 2]
mov word [rbp + 0xa8], r8w
lea edx, [rax + 0x19]
mov word [rbp + 0xaa], dx
mov word [rbp + 0xac], cx
mov word [rbp + 0xae], r10w
mov word [rbp + 0xb0], r9w
lea ecx, [rax + 0x13]
mov word [rbp + 0xb2], cx
mov word [rbp + 0xb4], ax
lea eax, [rdi + 1]
mov word [rbp + 0xb6], ax
xor eax, eax
mov word [rbp + 0xb8], ax
movzx eax, word [rbp + 0x8c]
mov rdx, r13
movzx eax, word [rbp + rdx*2 + 0x8c]
mov ecx, dword [rbp + 0x88]
xor cx, ax
mov word [rbp + rdx*2 + 0x8c], cx
add rdx, r15
cmp rdx, 0x16
jb 0x18018de34
mov word [rbp + 0xb8], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp + 0x8c]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018de77
lea rdx, [rbp + 0x8c]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8, rdi
lea rcx, [rbp + 0x8c]
jmp 0x18018d61e
bt edx, 8
jae 0x18018df53
mov ecx, 0x55
mov word [rbp - 0x40], cx
lea edx, [rcx - 0xf]
mov word [rbp - 0x3e], dx
lea ecx, [rdx + 6]
mov word [rbp - 0x3c], cx
lea eax, [rdx + 4]
mov word [rbp - 0x3a], ax
lea r8d, [rdx + 0x1e]
mov word [rbp - 0x38], r8w
mov word [rbp - 0x36], cx
lea eax, [rdx + 0x14]
mov word [rbp - 0x34], ax
mov word [rbp - 0x32], dx
lea ecx, [rdx + 0x11]
mov word [rbp - 0x30], cx
lea ecx, [rdx + 3]
mov word [rbp - 0x2e], cx
mov word [rbp - 0x2c], r13w
movzx eax, word [rbp - 0x40]
mov r8, r13
lea ecx, [rdx - 0x41]
lea edx, [rcx + 5]
movzx eax, word [rbp + r8*2 - 0x40]
sub ax, cx
mov word [rbp + r8*2 - 0x40], ax
add r8, r15
cmp r8, rdx
jb 0x18018df00
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp - 0x40]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018df2d
lea rdx, [rbp - 0x40]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8d, 0x16
lea rcx, [rbp - 0x40]
jmp 0x18018d61e
bt edx, 9
jae 0x18018e0a9
mov r14d, 0x27
mov dword [rsp + 0x60], r14d
mov eax, dword [rsp + 0x60]
xor ax, 0x50
mov word [rsp + 0x64], ax
mov eax, dword [rsp + 0x60]
add ax, r15w
xor ax, 0x41
mov word [rsp + 0x66], ax
mov eax, dword [rsp + 0x60]
add ax, r9w
xor ax, 0x47
mov word [rsp + 0x68], ax
mov eax, dword [rsp + 0x60]
add ax, 3
mov r9w, 0x45
xor ax, r9w
mov word [rsp + 0x6a], ax
mov eax, dword [rsp + 0x60]
add ax, 4
xor ax, 0x5f
mov word [rsp + 0x6c], ax
mov eax, dword [rsp + 0x60]
add ax, 5
xor ax, 0x4e
mov word [rsp + 0x6e], ax
mov eax, dword [rsp + 0x60]
add ax, 6
xor ax, 0x4f
mov word [rsp + 0x70], ax
mov eax, dword [rsp + 0x60]
add ax, 7
xor ax, 0x43
mov word [rsp + 0x72], ax
mov eax, dword [rsp + 0x60]
add ax, r8w
xor ax, 0x41
mov word [rsp + 0x74], ax
mov eax, dword [rsp + 0x60]
add ax, 9
xor ax, 0x43
mov word [rsp + 0x76], ax
mov eax, dword [rsp + 0x60]
add ax, 0xa
xor ax, 0x48
mov word [rsp + 0x78], ax
mov eax, dword [rsp + 0x60]
add ax, 0xb
xor ax, r9w
mov word [rsp + 0x7a], ax
xor eax, eax
mov word [rsp + 0x7c], ax
movzx eax, word [rsp + 0x64]
mov rdx, r13
lea r8d, [r14 - 0x1b]
movzx eax, word [rsp + rdx*2 + 0x64]
mov ecx, dword [rsp + 0x60]
add cx, dx
xor cx, ax
mov word [rsp + rdx*2 + 0x64], cx
add rdx, r15
cmp rdx, r8
jb 0x18018e048
mov word [rsp + 0x7c], r13w
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rsp + 0x64]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018e081
lea rdx, [rsp + 0x64]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8d, 0x1a
lea rcx, [rsp + 0x64]
jmp 0x18018d61e
bt edx, 0xa
jae 0x18018e199
mov ecx, 0x55
mov word [rbp + 0x64], cx
lea edx, [rcx - 0xf]
mov word [rbp + 0x66], dx
lea ecx, [rdx + 6]
mov word [rbp + 0x68], cx
lea eax, [rdx + 4]
mov word [rbp + 0x6a], ax
lea r8d, [rdx + 0x1e]
mov word [rbp + 0x6c], r8w
lea ecx, [rdx + 0x16]
mov word [rbp + 0x6e], cx
lea ecx, [rdx + 0x11]
mov word [rbp + 0x70], cx
lea edx, [rax + 4]
mov word [rbp + 0x72], dx
lea ecx, [rax + 0xf]
mov word [rbp + 0x74], cx
mov word [rbp + 0x76], ax
lea r8d, [rax - 2]
mov word [rbp + 0x78], r8w
lea r11d, [rax + 0xa]
mov word [rbp + 0x7a], r11w
lea edi, [rax + 8]
mov word [rbp + 0x7c], di
lea ecx, [rax - 3]
mov word [rbp + 0x7e], cx
mov word [rbp + 0x80], dx
lea edx, [rax + 9]
mov word [rbp + 0x82], dx
mov word [rbp + 0x84], ax
mov word [rbp + 0x86], r13w
movzx eax, word [rbp + 0x64]
mov rdx, r13
lea ecx, [rdi - 0x4d]
lea r8d, [r11 - 0x43]
movzx eax, word [rbp + rdx*2 + 0x64]
sub ax, cx
mov word [rbp + rdx*2 + 0x64], ax
add rdx, r15
cmp rdx, r8
jb 0x18018e148
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], r13
lea rax, [rbp + 0x64]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r13w
jne 0x18018e173
lea rdx, [rbp + 0x64]
mov rcx, rbx
call fcn.18007b5dc
nop
mov r8d, 0x24
lea rcx, [rbp + 0x64]
jmp 0x18018d61e
mov ecx, 0x22
mov dword [rbp - 0x4c], ecx
mov ecx, 0xb
mov word [rbp - 0x48], cx
mov ecx, 3
mov word [rbp - 0x46], cx
xor eax, eax
mov word [rbp - 0x44], ax
movzx eax, word [rbp - 0x48]
mov r8, r13
movzx eax, word [rbp + r8*2 - 0x48]
mov ecx, dword [rbp - 0x4c]
xor cx, ax
mov word [rbp + r8*2 - 0x48], cx
add r8, r15
cmp r8, r9
jb 0x18018e1c0
mov word [rbp - 0x44], r13w
mov eax, 0x61
mov word [rbp + 0xbc], ax
lea r14d, [rax - 0x3a]
mov word [rbp + 0xbe], r14w
lea eax, [r14 + 0x3c]
mov word [rbp + 0xc0], ax
lea eax, [r14 - 1]
mov word [rbp + 0xc2], ax
lea ecx, [rax + 0x29]
mov word [rbp + 0xc4], cx
lea r15d, [r14 + 0x4d]
mov word [rbp + 0xc6], r15w
lea ecx, [rax + 0x56]
mov word [rbp + 0xc8], cx
lea r12d, [r14 + 0x40]
mov word [rbp + 0xca], r12w
lea edi, [rax + 0x4c]
mov word [rbp + 0xcc], di
lea r10d, [r14 + 0x48]
mov word [rbp + 0xce], r10w
lea ecx, [rax + 0x44]
mov word [rbp + 0xd0], cx
mov word [rbp + 0xd2], ax
lea ecx, [rax + 0x50]
mov word [rbp + 0xd4], cx
mov word [rbp + 0xd6], r12w
lea r11d, [r14 + 0x46]
mov word [rbp + 0xd8], r11w
lea r8d, [r14 + 0x44]
mov word [rbp + 0xda], r8w
mov word [rbp + 0xdc], ax
mov word [rbp + 0xde], cx
lea ecx, [rax + 0x52]
mov word [rbp + 0xe0], cx
lea ecx, [rax + 0x4f]
mov word [rbp + 0xe2], cx
lea r9d, [r14 + 0x53]
mov word [rbp + 0xe4], r9w
mov word [rbp + 0xe6], r8w
lea r8d, [r14 + 0x42]
mov word [rbp + 0xe8], r8w
mov word [rbp + 0xea], r9w
mov word [rbp + 0xec], r10w
mov word [rbp + 0xee], cx
mov word [rbp + 0xf0], r15w
mov word [rbp + 0xf2], ax
lea ecx, [rax + 0x46]
mov word [rbp + 0xf4], cx
mov word [rbp + 0xf6], di
mov word [rbp + 0xf8], r12w
mov word [rbp + 0xfa], r11w
lea ecx, [rax + 0x1a]
mov word [rbp + 0xfc], cx
mov word [rbp + 0xfe], ax
lea edi, [rax + 8]
mov word [rbp + 0x100], di
mov word [rbp + 0x102], r13w
movzx eax, word [rbp + 0xbc]
mov rcx, r13
lea edi, [r14 - 0x21]
lea r8d, [r14 - 4]
movzx eax, word [rbp + rcx*2 + 0xbc]
sub ax, di
mov word [rbp + rcx*2 + 0xbc], ax
inc rcx
cmp rcx, r8
jb 0x18018e348
lea r9, [rbp - 0x48]
mov r8d, edx
lea rdx, [rbp + 0xbc]
lea rcx, [rbp + 0x110]
call fcn.180136f38
nop
lea rdx, [rbp + 0x110]
xor ecx, ecx
call fcn.18014e37c
nop
mov rdx, qword [rbp + 0x128]
cmp rdx, rsi
jb 0x18018e3d5
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18018e3cf
add rdx, r14
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
mov r8d, 0x1f
cmp rax, r8
jbe 0x18018e3cf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180269534
nop
xor edx, edx
lea r8d, [rdx + 0x48]
lea rcx, [rbp + 0xbc]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
mov r8, rdi
xor edx, edx
lea rcx, [rbp - 0x48]
call qword [sym.imp.VCRUNTIME140.dll_memset]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r13
mov ecx, 7
mov qword [rbx + 0x18], rcx
mov word [rbx], r13w
mov rax, rbx
lea r11, [rsp + 0x230]
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