Function at 0x14007c610
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
mov rax, qword [0x1401080a8]
xor rax, rsp
mov qword [rbp + 0x60], rax
mov rbx, rdx
mov rsi, rcx
mov qword [rbp + 8], rcx
mov qword [rbp + 0x18], rdx
xor r14d, r14d
mov dword [rsp + 0x40], 0xbca8bfbe
mov dword [rsp + 0x44], 0xb7bcb1a1
mov word [rsp + 0x48], 0x100
mov ecx, r14d
nop word [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 8
jb 0x14007c670
mov byte [rsp + 0x49], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rbx], 0
jne 0x14007c6af
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007c6c3
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 8]
call fcn.140074f00
jmp 0x14007c6c7
mov rax, qword [rbp + 0x18]
cmp byte [rax], 3
jne 0x14007c6d2
mov r8, qword [rax + 8]
jmp 0x14007c6d5
mov r8, r14
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14007c6e2
mov rdx, qword [r8]
lea rcx, [rsi + 0x140]
mov r8, qword [r8 + 0x10]
call fcn.14006ae80
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14007c731
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007c72c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007c72c
call fcn.14113b73c
nop
int3
call fcn.1400d0f00
mov dword [rsp + 0x38], 0x100bca2
mov rcx, r14
nop dword [rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 2
jb 0x14007c740
mov byte [rsp + 0x3b], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x3a]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rbx], 0
jne 0x14007c77f
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007c793
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 8]
call fcn.140074f00
jmp 0x14007c797
mov rax, qword [rbp + 0x18]
cmp byte [rax], 3
jne 0x14007c7a2
mov r8, qword [rax + 8]
jmp 0x14007c7a5
mov r8, r14
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14007c7b2
mov rdx, qword [r8]
lea rcx, [rsi + 0x160]
mov r8, qword [r8 + 0x10]
call fcn.14006ae80
nop
mov r8, qword [rbp - 0x58]
cmp r8, 0x10
jb 0x14007c7dd
inc r8
mov rdx, qword [rbp - 0x70]
lea rcx, [rbp - 0x70]
call fcn.14003ddb0
mov dword [rsp + 0x38], 0xaaa4bba3
mov word [rsp + 0x3c], 0x100
mov rcx, r14
nop
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 4
jb 0x14007c7f0
mov byte [rsp + 0x3d], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x3c]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rbx], 0
jne 0x14007c82f
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007c843
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 8]
call fcn.140074f00
jmp 0x14007c847
mov rax, qword [rbp + 0x18]
movzx edi, byte [rax]
mov r8, qword [rbp - 0x58]
cmp r8, 0x10
jb 0x14007c864
inc r8
mov rdx, qword [rbp - 0x70]
lea rcx, [rbp - 0x70]
call fcn.14003ddb0
test dil, dil
jne 0x14007c887
lea rcx, [rsi + 0x180]
mov r8d, 4
lea rdx, [0x1400d7160]
call fcn.14006ae80
jmp 0x14007c92c
mov dword [rsp + 0x38], 0xaaa4bba3
mov word [rsp + 0x3c], 0x100
mov rcx, r14
nop dword [rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 4
jb 0x14007c8a0
mov byte [rsp + 0x3d], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x3c]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x48]
call fcn.14003e950
nop
cmp byte [rbx], 0
jne 0x14007c8df
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007c8f3
lea rdx, [rbp - 0x48]
mov rcx, qword [rbx + 8]
call fcn.140074f00
jmp 0x14007c8f7
mov rax, qword [rbp + 0x18]
cmp byte [rax], 3
jne 0x14007c902
mov r8, qword [rax + 8]
jmp 0x14007c905
mov r8, r14
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14007c912
mov rdx, qword [r8]
lea rcx, [rsi + 0x180]
mov r8, qword [r8 + 0x10]
call fcn.14006ae80
nop
lea rcx, [rbp - 0x48]
call fcn.14003db70
mov dword [rsp + 0x40], 0xafa8bea8
mov dword [rsp + 0x44], 0xb3b5b5bb
mov dword [rsp + 0x48], 0x100b1a7
mov rcx, r14
nop word [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 0xa
jb 0x14007c950
mov byte [rsp + 0x4b], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x4a]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rbx], 0
jne 0x14007c98f
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007c9a3
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 8]
call fcn.140074f00
jmp 0x14007c9a7
mov rax, qword [rbp + 0x18]
cmp byte [rax], 3
jne 0x14007c9b2
mov r8, qword [rax + 8]
jmp 0x14007c9b5
mov r8, r14
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14007c9c2
mov rdx, qword [r8]
lea rcx, [rsi + 0x1a0]
mov r8, qword [r8 + 0x10]
call fcn.14006ae80
nop
mov r8, qword [rbp - 0x58]
cmp r8, 0x10
jb 0x14007c9ed
inc r8
mov rdx, qword [rbp - 0x70]
lea rcx, [rbp - 0x70]
call fcn.14003ddb0
mov dword [rsp + 0x40], 0xbabeada7
mov dword [rsp + 0x44], 0xbbb6bfa3
mov word [rsp + 0x48], 0xbd
mov byte [rsp + 0x4a], 1
mov rcx, r14
nop dword [rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x40], al
inc rcx
cmp rcx, 9
jb 0x14007ca10
mov byte [rsp + 0x4a], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x49]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rbx], 0
jne 0x14007ca4f
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007ca63
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 8]
call fcn.140074f00
jmp 0x14007ca67
mov rax, qword [rbp + 0x18]
cmp byte [rax], 3
jne 0x14007ca72
mov r8, qword [rax + 8]
jmp 0x14007ca75
mov r8, r14
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14007ca82
mov rdx, qword [r8]
lea rcx, [rsi + 0x1c0]
mov r8, qword [r8 + 0x10]
call fcn.14006ae80
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14007cad1
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007cacc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14007cacc
call fcn.14113b73c
nop
int3
call fcn.1400d0f00
mov r12d, r14d
mov r13, qword [rbp + 0x18]
nop dword [rax + rax]
mov dword [rsp + 0x60], 0xbdafb9b8
mov dword [rsp + 0x64], 0xa2b8a2ac
mov dword [rsp + 0x68], 0xb8babda7
mov word [rsp + 0x6c], 0xa4
mov byte [rsp + 0x6e], 1
mov rcx, r14
nop word [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x60], al
inc rcx
cmp rcx, 0xd
jb 0x14007cb10
mov byte [rsp + 0x6e], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x6d]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rbx], 0
jne 0x14007cb4f
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007cb64
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 8]
call fcn.140074f00
mov r13, rax
movzx edx, byte [r13]
test edx, edx
je 0x14007cb99
sub edx, 1
je 0x14007cb8f
cmp edx, 1
je 0x14007cb7e
mov edi, 1
jmp 0x14007cb9c
mov rax, qword [r13 + 8]
mov rdi, qword [rax + 8]
sub rdi, qword [rax]
sar rdi, 4
jmp 0x14007cb9c
mov rax, qword [r13 + 8]
mov rdi, qword [rax + 8]
jmp 0x14007cb9c
mov rdi, r14
movsxd r15, r12d
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14007cbda
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007cbd5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007d172
call fcn.1400d0f00
cmp r15, rdi
jae 0x14007d19c
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], 0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], 0xf
mov byte [rbp + 0x40], 0
mov dword [rsp + 0x70], 0xbdafb9b8
mov dword [rsp + 0x74], 0xa2b8a2ac
mov dword [rsp + 0x78], 0xb8babda7
mov word [rsp + 0x7c], 0xa4
mov byte [rsp + 0x7e], 1
mov rcx, r14
nop word [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x70], al
inc rcx
cmp rcx, 0xd
jb 0x14007cc40
mov byte [rsp + 0x7e], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x7d]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x48]
call fcn.14003e950
nop
mov r14, qword [rbp + 0x18]
cmp byte [rbx], 0
jne 0x14007cc83
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007cc98
lea rdx, [rbp - 0x48]
mov rcx, qword [rbx + 8]
call fcn.140074f00
mov r14, rax
mov rdi, qword [rbp + 0x18]
cmp byte [r14], 0
jne 0x14007ccc1
mov byte [r14], 2
mov ecx, 0x18
call fcn.1400d1278
xor ecx, ecx
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rcx
mov qword [r14 + 8], rax
cmp byte [r14], 2
jne 0x14007cd37
mov rdi, qword [r14 + 8]
mov rax, qword [rdi + 8]
sub rax, qword [rdi]
sar rax, 4
cmp r15, rax
jb 0x14007cd29
mov byte [rbp - 0x28], 0
xor edx, edx
lea rcx, [rbp - 0x20]
call fcn.1400743c0
nop
mov rax, qword [r14 + 8]
mov r8, qword [rax + 8]
mov rdx, r8
sub rdx, qword [rax]
sar rdx, 4
mov r9, r15
sub r9, rdx
inc r9
lea rax, [rbp - 0x28]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.14007ad20
nop
movzx edx, byte [rbp - 0x28]
lea rcx, [rbp - 0x20]
call fcn.140077c30
mov rax, qword [r14 + 8]
mov rdi, r15
shl rdi, 4
add rdi, qword [rax]
mov dword [rsp + 0x50], 0xbdafb9b8
mov dword [rsp + 0x54], 0xa2b8a2ac
mov dword [rsp + 0x58], 0xb8babda7
mov word [rsp + 0x5c], 0x100
xor ecx, ecx
nop dword [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x50], al
inc rcx
cmp rcx, 0xc
jb 0x14007cd60
mov byte [rsp + 0x5d], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x5c]
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rdi], 0
jne 0x14007cd9f
mov byte [rdi], 1
call fcn.14006ffc0
mov qword [rdi + 8], rax
cmp byte [rdi], 1
jne 0x14007cdb7
lea rdx, [rbp - 0x70]
mov rcx, qword [rdi + 8]
call fcn.140074f00
mov qword [rbp - 8], rax
jmp 0x14007cdbb
mov rax, qword [rbp - 8]
cmp byte [rax], 3
jne 0x14007cdc6
mov r8, qword [rax + 8]
jmp 0x14007cdc9
xor r8d, r8d
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14007cdd6
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0x20]
call fcn.14006ae80
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14007ce1f
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007ce1a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007d179
call fcn.1400d0f00
mov qword [rbp - 0x60], 0
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x14007ce6e
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007ce69
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007d180
call fcn.1400d0f00
mov dword [rbp - 0x80], 0xbdafb9b8
mov dword [rbp - 0x7c], 0xa2b8a2ac
mov dword [rbp - 0x78], 0xb8babda7
mov word [rbp - 0x74], 0xa4
mov byte [rbp - 0x72], 1
xor ecx, ecx
nop
lea eax, [rcx - 0x35]
xor byte [rbp + rcx - 0x80], al
inc rcx
cmp rcx, 0xd
jb 0x14007ce90
mov byte [rbp - 0x72], 0
lea r9, [rsp + 0x30]
lea r8, [rbp - 0x73]
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x48]
call fcn.14003e950
nop
mov r14, qword [rbp - 0x50]
cmp byte [rbx], 0
jne 0x14007ced0
mov byte [rbx], 1
call fcn.14006ffc0
mov qword [rbx + 8], rax
cmp byte [rbx], 1
jne 0x14007cee5
lea rdx, [rbp - 0x48]
mov rcx, qword [rbx + 8]
call fcn.140074f00
mov r14, rax
mov rdi, qword [rbp - 0x50]
cmp byte [r14], 0
jne 0x14007cf0e
mov byte [r14], 2
mov ecx, 0x18
call fcn.1400d1278
xor ecx, ecx
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rcx
mov qword [r14 + 8], rax
cmp byte [r14], 2
jne 0x14007cf84
mov rdi, qword [r14 + 8]
mov rax, qword [rdi + 8]
sub rax, qword [rdi]
sar rax, 4
cmp r15, rax
jb 0x14007cf76
mov byte [rbp - 0x18], 0
xor edx, edx
lea rcx, [rbp - 0x10]
call fcn.1400743c0
nop
mov rax, qword [r14 + 8]
mov r8, qword [rax + 8]
mov rdx, r8
sub rdx, qword [rax]
sar rdx, 4
mov r9, r15
sub r9, rdx
inc r9
lea rax, [rbp - 0x18]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x10]
mov rcx, rdi
call fcn.14007ad20
nop
movzx edx, byte [rbp - 0x18]
lea rcx, [rbp - 0x10]
call fcn.140077c30
mov rax, qword [r14 + 8]
mov rdi, r15
shl rdi, 4
add rdi, qword [rax]
mov dword [rsp + 0x38], 0xa7bdb4ae
mov dword [rsp + 0x3c], 0x100a9bd
xor r14d, r14d
mov ecx, r14d
nop word [rax + rax]
lea eax, [rcx - 0x35]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 6
jb 0x14007cfa0
mov byte [rsp + 0x3f], r14b
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x3e]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x70]
call fcn.14003e950
nop
cmp byte [rdi], 0
jne 0x14007cfdf
mov byte [rdi], 1
call fcn.14006ffc0
mov qword [rdi + 8], rax
cmp byte [rdi], 1
jne 0x14007cff7
lea rdx, [rbp - 0x70]
mov rcx, qword [rdi + 8]
call fcn.140074f00
mov qword [rbp], rax
jmp 0x14007cffb
mov rax, qword [rbp]
cmp byte [rax], 3
jne 0x14007d006
mov r8, qword [rax + 8]
jmp 0x14007d009
mov r8, r14
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14007d016
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0x40]
call fcn.14006ae80
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14007d05f
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007d05a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007d187
call fcn.1400d0f00
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x14007d0aa
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007d0a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007d18e
call fcn.1400d0f00
mov rdi, qword [rbp + 8]
mov rsi, qword [rdi + 0x1e8]
cmp rsi, qword [rdi + 0x1f0]
je 0x14007d0e8
mov qword [rsp + 0x40], rsi
lea rdx, [rbp + 0x20]
mov rcx, rsi
call fcn.14004d770
nop
lea rcx, [rsi + 0x20]
lea rdx, [rbp + 0x40]
call fcn.14004d770
nop
add qword [rdi + 0x1e8], 0x40
jmp 0x14007d0fc
lea r8, [rbp + 0x20]
mov rdx, rsi
lea rcx, [rdi + 0x1e0]
call fcn.14006eda0
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14007d133
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007d12e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007d195
call fcn.1400d0f00
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14007d16a
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007d165
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14007d195
call fcn.1400d0f00
inc r12d
jmp 0x14007cae0
call fcn.14113b73c
nop
nop
call fcn.14113b73c
nop
nop
call fcn.14113b73c
nop
nop
call fcn.14113b73c
nop
nop
call fcn.14113b73c
nop
nop
call fcn.14113b73c
nop
nop
lea rcx, [rbx + 8]
movzx edx, byte [rbx]
call fcn.140077c30
mov rcx, qword [rbp + 0x60]
xor rcx, rsp
call fcn.1400d1740
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret