Function at 0x140033640
Capabilities:
Encode data using xor

Disassembly:
xchg rbx, r9
mov qword [rsp + 0x20], r9
xchg r9, rbx
xchg r8, rcx
mov qword [rsp + 0x18], rcx
xchg rcx, r8
xchg rcx, r9
mov qword [rsp + 8], r9
xchg rcx, r9
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push rsi
push rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r13
mov dword [rsp - 0x24], 0x5c8ded85
push r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0xd0]
add rsp, 0x5b6d0272
sub rsp, 0x5b6d0442
mov rax, qword [rdx + 0x78]
xor r14d, r14d
xchg r14, r15
mov qword [rsp + 0x20], r15
xchg r15, r14
xchg r9, rsi
mov r9, rsi
xchg r9, rsi
mov qword [rsp + 0x28], r14
mov rbp, rbp
xchg rdi, rdx
mov rdx, r8
xchg rdx, rdi
mov qword [rsp + 0x30], r14
mov dword [rsp - 0x1c], ebp
xchg r15, rdx
mov rdx, r15
xchg r15, rdx
mov qword [rsp + 0x38], 0x25718557
add qword [rsp + 0x38], 0x20b85398
xor qword [rsp + 0x38], 0x5186bde0
sub qword [rsp + 0x38], 0x17af650e
xchg rcx, r11
mov rbx, r11
xchg rcx, r11
mov r13d, r14d
mov r12d, r14d
mov r9, r9
cmp rax, 0x78
jbe 0x14003372f
xchg rdi, rcx
mov rdi, qword [rdx]
xchg rcx, rdi
jmp 0x14003374b
test rax, rax
mov dword [rsp - 0x44], ecx
xchg rcx, r14
mov r14, rcx
xchg r14, rcx
cmovne rcx, r15
mov dword [rsp - 0x2c], 0xca24d17
xchg rsp, rax
mov rsp, qword [rcx]
xchg rsp, rax
lea r8, [rsp + 0x50]
mov rdi, rdi
mov r9d, 0x7c341a4c
sub r9d, 0x444fdbf9
add r9d, 0x19d25326
xor r9d, 0x69606026
xor r9d, 0x38d6f14b
xchg rdx, rcx
mov rcx, rdi
xchg rdx, rcx
call qword [rax + 8]
test al, al
jne 0x140033843
xchg r13, r13
lea rdx, [rsp + 0x20]
mov qword [rbx], r14
xchg rcx, rbx
mov rbx, rcx
xchg rcx, rbx
mov qword [rbx + 8], r14
xchg rdi, r14
mov qword [rbx + 0x10], rdi
xchg rdi, r14
mov qword [rbx + 0x18], 0x35a8d3c9
add qword [rbx + 0x18], 0x427c4c8b
sub qword [rbx + 0x18], 0x696d677c
xor qword [rbx + 0x18], 0x38cd14ef
sub qword [rbx + 0x18], 0x367aac36
call fcn.14002edc0
mov dword [rsp - 0x30], edx
mov rax, qword [r15 + 0x78]
cmp rax, 0x78
jbe 0x140033817
mov dword [rsp - 0x44], ebx
mov rcx, qword [r15]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov dword [rsp - 0x3c], edi
mov rcx, qword [r15]
call fcn.14004d3c0
mov qword [r15 + 0x78], r14
xchg r15, r15
jmp 0x140034186
test rax, rax
mov r9, r9
je 0x14003383a
mov rax, qword [r15]
xor edx, edx
mov dword [rsp - 0x1c], edx
xchg rcx, r15
mov r15, rcx
xchg rcx, r15
call qword [rax]
mov rbp, rbp
mov qword [r15 + 0x78], r14
jmp 0x140034186
nop
movabs r8, 0xffffffff0ba10dac
add r8, 0x1469b44e
xor r8, 0x3cb51520
add r8, 0x7fffffff
xor r8, 0x63402b26
mov rax, r8
nop
inc rax
mov dword [rsp - 0x20], 0x15d4bfab
cmp word [rsi + rax*2 + 8], r12w
jne 0x14003386f
mov ecx, dword [rsp + 0x54]
lea r14, [rax - 4]
xchg rbx, rbx
cmp rax, 4
cmovbe r14, rax
mov eax, 0x38d409f4
add eax, 0x153cf2bf
add eax, 0x2b981ae7
xor eax, 0x79a91796
mul rcx
cmovo rax, r8
xchg rcx, r11
mov r11, rax
xchg rcx, r11
call fcn.14004cf20
xchg r9, r9
mov ecx, dword [rsp + 0x54]
xchg r8, r15
mov r15, rax
xchg r15, r8
xchg rdx, r10
mov r10, qword [r15 + 0x78]
xchg r10, rdx
mov qword [rsp + 0x48], rax
lea r9, [rcx + rcx*2]
shl r9, 1
shl r9, 1
cmp rdx, 0x78
jbe 0x140033903
xchg rdi, rcx
mov rdi, qword [r15]
xchg rcx, rdi
jmp 0x14003390f
xor ecx, ecx
test rdx, rdx
mov rsp, rsp
cmovne rcx, r15
mov rax, qword [rcx]
lea rdx, [rdi + 8]
call qword [rax + 8]
mov r8, r8
test al, al
je 0x1400340c3
xor edi, edi
cmp dword [rsp + 0x54], edi
mov dword [rsp - 0x1c], ecx
jbe 0x1400340c3
mov rax, qword [rsp + 0x48]
lea rcx, [rdi + rdi*2]
xorps xmm0, xmm0
mov dword [rsp - 0x14], ebp
mov edx, 0x5b3f4526
sub edx, 0x37393141
add edx, 0xe12c7da
xor edx, 0x5ab9bc6c
xor edx, 0x68a167ad
xchg rdx, rbp
movups xmmword [rdx + 0x50], xmm0
xchg rdx, rbp
mov r9d, edx
mov dword [rsp - 0x44], ebp
lea rbx, [rax + rcx*4]
mov eax, dword [rax + rcx*4 + 4]
xchg r13, rbp
movups xmmword [r13 + 0x60], xmm0
xchg rbp, r13
xchg r15, rbp
movups xmmword [r15 + 0x70], xmm0
xchg r15, rbp
xchg rcx, rbp
movups xmmword [rcx + 0x80], xmm0
xchg rbp, rcx
xchg rdx, rbp
movups xmmword [rdx + 0x90], xmm0
xchg rbp, rdx
movups xmmword [rbp + 0xa0], xmm0
xchg rbp, r14
movups xmmword [r14 + 0xb0], xmm0
xchg r14, rbp
xchg rcx, rbp
movups xmmword [rcx + 0xc0], xmm0
xchg rcx, rbp
cmp eax, edx
mov rsp, rsp
ja 0x1400339da
mov r9d, eax
mov edx, dword [rbx]
add rdx, qword [rbp + 0x120]
xchg rdi, rdi
mov rax, qword [r15 + 0x78]
cmp rax, 0x78
jbe 0x140033a05
xchg rsi, rsi
xchg r9, rcx
mov r9, qword [r15]
xchg rcx, r9
jmp 0x140033a11
xor ecx, ecx
test rax, rax
xchg r13, r13
cmovne rcx, r15
mov rax, qword [rcx]
lea r8, [rbp + 0x50]
call qword [rax + 8]
mov dword [rsp - 0x38], 0x435cb79f
test al, al
je 0x140033a54
xchg r8, rbp
mov rbp, r14
xchg rbp, r8
lea rdx, [rsi + 8]
mov dword [rsp - 0xc], 0x656dc446
lea rcx, [rbp + 0x50]
call fcn.1400535b0
test eax, eax
je 0x140033a68
xchg r13, r13
inc edi
cmp edi, dword [rsp + 0x54]
jae 0x1400340bc
mov r14, r14
jmp 0x140033934
mov ebx, dword [rbx + 8]
mov dword [rsp - 0x30], edi
mov r14, qword [rbp + 0x120]
mov rax, qword [r15 + 0x78]
add rbx, r14
xchg rbx, rbp
mov qword [rsp + 0x40], rbp
xchg rbp, rbx
cmp rax, 0x78
mov rbx, rbx
jbe 0x140033a9d
mov rcx, qword [r15]
jmp 0x140033aa9
xor ecx, ecx
test rax, rax
mov rsp, rsp
cmovne rcx, r15
mov rax, qword [rcx]
lea r8, [rbp - 0x48]
xchg r8, r8
mov r9d, 0x40850615
add r9d, 0x26cf89ad
xor r9d, 0x1347172c
sub r9d, 0x474a7ae5
sub r9d, 0x2cc91df5
xchg rbx, rdx
mov rbx, rdx
xchg rbx, rdx
call qword [rax + 8]
xchg r15, r15
test al, al
je 0x1400340bc
xor esi, esi
mov dword [rsp - 0x34], ebx
mov dword [rbp + 0x118], esi
cmp dword [rbp - 0x48], esi
jbe 0x1400340bc
xchg rbx, rax
mov rbx, qword [r15 + 0x78]
xchg rbx, rax
cmp rax, 0x78
jbe 0x140033b21
xchg rcx, r14
mov r14, qword [r15]
xchg rcx, r14
jmp 0x140033b2d
xor ecx, ecx
test rax, rax
xchg r15, r15
cmovne rcx, r15
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
lea r8, [rbp - 0x58]
mov dword [rsp - 0x44], 0x48973acd
mov edx, esi
mov r9d, 0x53d93f0f
sub r9d, 0x2dc7c185
sub r9d, 0x24538c14
add r9d, 0x2ec2e488
sub r9d, 0x3080d5ee
shl rdx, 2
shl rdx, 1
shl rdx, 1
nop
sub rdx, 0x78552479
add rdx, 0x7855247d
xchg r15, rdi
mov r15, qword [rax + 8]
xchg rdi, r15
add rdx, rbx
mov dword [rsp - 0x3c], ecx
call rdi
test al, al
je 0x14003409c
movzx eax, word [rbp - 0x4c]
xchg r11, r11
xorps xmm0, xmm0
mov ecx, 0x4c805c3f
add ecx, 0x1dc76040
xor ecx, 0x749f8f04
xor ecx, 0x1ed83305
mov r9d, ecx
xchg rbp, rdi
movups xmmword [rdi - 0x30], xmm0
xchg rbp, rdi
xchg r12, rbp
movups xmmword [r12 - 0x20], xmm0
xchg r12, rbp
xchg r14, rbp
movups xmmword [r14 - 0x10], xmm0
xchg rbp, r14
xchg r15, rbp
movups xmmword [r15], xmm0
xchg rbp, r15
xchg r13, rbp
movups xmmword [r13 + 0x10], xmm0
xchg rbp, r13
xchg r11, rbp
movups xmmword [r11 + 0x20], xmm0
xchg r11, rbp
xchg r8, rbp
movups xmmword [r8 + 0x30], xmm0
xchg r8, rbp
movups xmmword [rbp + 0x40], xmm0
mov dword [rsp - 0x2c], 0x4f105146
cmp cx, ax
jb 0x140033c24
mov r9d, eax
mov dword [rsp - 0xc], esp
mov edx, dword [rbp - 0x50]
xchg rdx, rax
mov rdx, qword [r15 + 0x78]
xchg rdx, rax
add rdx, r14
xchg r11, r11
cmp rax, 0x78
jbe 0x140033c4d
xchg r11, rcx
mov r11, qword [r15]
xchg r11, rcx
jmp 0x140033c59
xor ecx, ecx
test rax, rax
xchg r9, r9
cmovne rcx, r15
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
lea r8, [rbp - 0x30]
xchg r8, r8
call qword [rax + 8]
test al, al
je 0x14003409c
mov dword [rsp - 0x20], 0x51b5e25d
xorps xmm0, xmm0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x68], rax
nop
movabs rdx, 0xffffffff3ed006ee
sub rdx, 0x2df534c8
add rdx, 0x548daa11
add rdx, 0x7fffffff
xor rdx, 0x1a9783c9
lea rax, [rbp - 0x30]
xchg rsi, rsp
movups xmmword [rsi + 0x70], xmm0
xchg rsp, rsi
movups xmmword [rbp - 0x80], xmm0
mov dword [rsp - 0x10], 0xe9e9863
movups xmmword [rbp - 0x70], xmm0
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140033ccc
xchg r11, r11
lea rcx, [rsp + 0x68]
xchg r12, rdx
mov qword [rbp - 0x60], r12
xchg r12, rdx
call fcn.14002ecb0
xor edi, edi
mov edx, 0xc645df2
add edx, 0x29a54205
add edx, 0x114b9aad
xor edx, 0x4a8502f9
cmp qword [rbp - 0x60], rdi
mov dword [rsp - 0x10], esi
jbe 0x140033d8c
lea r8, [rbp - 0x30]
mov r9d, 0x33b1dad0
sub r9d, 0x282353a5
add r9d, 0xa2cde6d
xor r9d, 0x12d450a9
xor r9d, 0x76f35ce
sub r8, rax
nop dword [rax]
mov dword [rsp - 0x44], 0x31c3fc72
nop word [rax + rax]
movzx ecx, dx
lea rax, [rax + 2]
mov dword [rsp - 0x24], ebx
and cx, r9w
ror edx, 3
ror edx, 1
ror edx, 4
xor cx, word [r8 + rax - 2]
inc rdi
mov dword [rsp - 0xc], 0x2d74b987
mov word [rax - 2], cx
cmp rdi, qword [rbp - 0x60]
jb 0x140033d56
test r12, r12
mov dword [rsp - 0x44], ecx
je 0x140034051
mov rsi, qword [rsp + 0x30]
cmp r12, rsi
jb 0x140033f4b
xchg rdi, rdi
inc rsi
xchg rcx, rbx
mov rbx, rsi
xchg rbx, rcx
mov qword [rsp + 0x30], rsi
shl rcx, 3
shl rcx, 1
shl rcx, 1
shl rcx, 1
call fcn.14004d6a0
mov r8, r8
xchg r14, rcx
mov rcx, rax
xchg r14, rcx
test r12, r12
mov dword [rsp - 0x28], ecx
je 0x140033e94
xchg rbx, r13
mov r13, rbx
xchg r13, rbx
lea rdi, [rax + 0x38]
sub rbx, rax
xchg rsi, r12
mov r12, rsi
xchg rsi, r12
lea rdx, [rdi - 0x30]
xorps xmm0, xmm0
mov r11, r11
xchg r8, rdx
mov qword [rdi - 0x38], r8
xchg r8, rdx
lea rcx, [rdi - 0x38]
xchg r15, r15
xchg rdx, rbx
movups xmmword [rbx], xmm0
xchg rdx, rbx
movups xmmword [rdx + 0x10], xmm0
xchg r10, r10
xchg rdx, r12
movups xmmword [r12 + 0x20], xmm0
xchg r12, rdx
mov rdx, qword [rdx + rbx + 0x30]
mov dword [rsp - 0x38], 0x542525d4
mov qword [rdi], rdx
call fcn.14002ecb0
xor ecx, ecx
cmp qword [rdi], rcx
xchg r14, r14
jbe 0x140033e7c
nop
xchg rdx, rbp
mov rbp, qword [rdi + rbx - 0x38]
xchg rbp, rdx
movzx edx, word [rdx + rcx*2]
mov word [rax + rcx*2], dx
mov r15, r15
inc rcx
cmp rcx, qword [rdi]
jb 0x140033e5a
neg rdi
add rdi, 0xffffffffffffffc0
neg rdi
sub rsi, 1
mov dword [rsp - 0x24], esi
jne 0x140033dff
test r13, r13
je 0x140033f2a
test r12, r12
xchg r15, r15
je 0x140033f1c
lea rbx, [r13 + 8]
xchg rsi, r12
mov r12, rsi
xchg r12, rsi
xchg rcx, rdi
mov rdi, qword [rbx - 8]
xchg rdi, rcx
cmp rcx, rbx
jne 0x140033efb
mov r9, r9
xchg rbx, rdi
mov rbx, rdi
xchg rbx, rdi
xor eax, eax
mov ecx, 0x5c2ff47c
sub ecx, 0x140fd366
xor ecx, 0x4000cb7f
add ecx, 0x4d09fa78
sub ecx, 0x552ae4b1
rep stosb byte [rdi], al
jmp 0x140033f00
call fcn.14004d3c0
nop
add rbx, 0x70880ee5
sub rbx, 0x70880ea5
sub rsi, 1
mov rdi, rdi
jne 0x140033eb6
xchg rdi, rcx
mov rdi, r13
xchg rcx, rdi
call fcn.14004d3c0
xchg r14, rsi
mov r13, rsi
xchg r14, rsi
xchg r14, rbp
mov qword [rsp + 0x20], rbp
xchg r14, rbp
xchg r15, r14
mov r15, qword [rbp + 0x120]
xchg r15, r14
mov esi, dword [rbp + 0x118]
mov dword [rsp - 0x10], 0x6b8101cd
xorps xmm0, xmm0
xchg rbx, r12
mov r12, rbx
xchg rbx, r12
shl rbx, 2
shl rbx, 3
shl rbx, 1
inc r12
mov rsp, rsp
add rbx, r13
lea rax, [rbx + 8]
mov rcx, rbx
mov dword [rsp - 0x1c], ebx
xchg r14, rax
mov qword [rbx], r14
xchg r14, rax
movups xmmword [rax], xmm0
xchg r10, r10
xchg r15, rax
movups xmmword [r15 + 0x10], xmm0
xchg r15, rax
movups xmmword [rax + 0x20], xmm0
mov dword [rsp - 0x20], ecx
xchg r15, rax
mov r15, qword [rbp - 0x60]
xchg r15, rax
mov qword [rbx + 0x38], rax
xchg rsp, rdx
mov rsp, qword [rbp - 0x60]
xchg rsp, rdx
call fcn.14002ecb0
xor edi, edi
cmp qword [rbx + 0x38], rdi
xchg r11, r11
jbe 0x140033ffd
nop dword [rax]
nop word [rax + rax]
mov dword [rsp - 0x20], edx
mov rcx, qword [rsp + 0x68]
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
mov dword [rsp - 0xc], ebx
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x140033fdf
xchg r9, rcx
mov r9, qword [rsp + 0x68]
xchg r9, rcx
lea rax, [rsp + 0x70]
cmp rcx, rax
mov dword [rsp - 0x18], 0xd2dc772
jne 0x14003408f
lea rdi, [rsp + 0x70]
xor eax, eax
mov dword [rsp - 0x40], 0x4dd535d0
mov ecx, 0xd1fce7b
xor ecx, 0x346d91a8
sub ecx, 0x1cf2ec95
add ecx, 0x289b01f8
sub ecx, 0x451a7506
rep stosb byte [rdi], al
jmp 0x140034097
test r13, r13
mov dword [rsp - 0x30], ebp
jne 0x140033f59
mov eax, 0xbf5780c
add eax, 0x4a69677b
sub eax, 0x27a74e01
sub eax, 0x2eb79185
mov qword [rsp + 0x30], rax
lea ecx, [rax + 0x3f]
call fcn.14004d6a0
mov r13, r13
mov r13, rax
mov qword [rsp + 0x20], rax
jmp 0x140033f59
call fcn.14004d3c0
xchg rdi, rdi
mov rbx, qword [rsp + 0x40]
inc esi
mov dword [rbp + 0x118], esi
mov dword [rsp - 0x3c], esp
cmp esi, dword [rbp - 0x48]
jb 0x140033b01
xchg r10, r12
mov qword [rsp + 0x28], r10
xchg r12, r10
mov rbx, qword [rbp + 0x110]
xchg rcx, r14
mov r14, qword [rsp + 0x48]
xchg r14, rcx
call fcn.14004cf30
mov rsi, rsi
xor edi, edi
mov qword [rbx + 0x18], 0x5c7eba4d
sub qword [rbx + 0x18], 0x51f10303
sub qword [rbx + 0x18], 0x45a9ca0
sub qword [rbx + 0x18], 0x6331aa9
lea rdx, [rsp + 0x20]
xchg rdi, r11
mov qword [rbx], r11
xchg rdi, r11
mov rcx, rbx
mov qword [rbx + 8], rdi
mov dword [rsp - 0x24], 0x1dc1f08
mov qword [rbx + 0x10], rdi
call fcn.14002edc0
lea rcx, [rsp + 0x20]
call fcn.1400301c0
mov dword [rsp - 0x18], 0x1382700e
xchg r9, rax
mov r9, qword [r15 + 0x78]
xchg r9, rax
cmp rax, 0x78
mov rdx, rdx
jbe 0x140034162
mov rcx, qword [r15]
xor edx, edx
mov rax, qword [rcx]
mov rbx, rbx
call qword [rax]
mov rcx, qword [r15]
call fcn.14004d3c0
mov r14, r14
jmp 0x14003417c
test rax, rax
je 0x14003417c
xchg rbx, rax
mov rbx, qword [r15]
xchg rbx, rax
xor edx, edx
mov rcx, r15
call qword [rax]
mov r14, r14
xchg r11, rdi
mov qword [r15 + 0x78], r11
xchg rdi, r11
mov rax, rbx
mov rbx, qword [rsp + 0x228]
mov dword [rsp - 0x18], esi
add rsp, 0x34db258d
sub rsp, 0x34db23bd
pop r15
pop r14
mov dword [rsp - 0x34], edx
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
pop rdi
xchg rsp, rsp
nop
add rsp, 8
mov rsi, qword [rsp - 8]
pop rbp
mov dword [rsp - 0x10], 0x145167ff
ret