Function at 0x180077140
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0xa8
lea rbp, [rsp + 0xe0]
xor eax, eax
mov qword [rbp - 0x88], rax
xorps xmm4, xmm4
movaps xmmword [rbp - 0x80], xmm4
movaps xmmword [rbp - 0x70], xmm4
movaps xmmword [rbp - 0x60], xmm4
movaps xmmword [rbp - 0x50], xmm4
mov qword [rbp - 0x40], rax
lea rcx, [rbp - 0x78]
call fcn.1800060d0
call sub.KERNEL32.dll_FreeConsole
lea rcx, [rbp - 0x78]
call fcn.180006120
lea rcx, [0x180143198]
call fcn.180004450
mov rbx, rax
mov rcx, rbx
mov edx, 0xf
mov r8d, 0x7fffffff
call fcn.1800a9280
xor esi, esi
lea rdx, [0x1801267f8]
movzx edx, word [rdx + rsi*2 + 0xc]
mov ecx, 0x88888889
mov eax, esi
imul rcx, rax
shr rcx, 0x23
mov eax, ecx
shl eax, 4
sub eax, ecx
mov ecx, esi
sub ecx, eax
cmp ecx, 0xf
jae 0x18007780b
lea rax, [0x18013a250]
movzx ecx, word [rax + rcx*2 + 0xc]
xor edx, ecx
mov rcx, rbx
call fcn.1800a9860
inc esi
cmp esi, 0xf
jl 0x1800771b6
mov rcx, rbx
call fcn.1800a9340
mov rbx, rax
lea rcx, [0x180143198]
call fcn.180004450
mov rsi, rax
mov rcx, rsi
mov edx, 0x10
mov r8d, 0x7fffffff
call fcn.1800a9280
xor edi, edi
lea rdx, [0x180125070]
movzx edx, word [rdx + rdi*2 + 0xc]
mov ecx, edi
and ecx, 0xf
lea rax, [0x1801391e8]
movzx ecx, word [rax + rcx*2 + 0xc]
xor edx, ecx
mov rcx, rsi
call fcn.1800a9860
inc edi
cmp edi, 0x10
jl 0x180077231
mov rcx, rsi
call fcn.1800a9340
mov qword [rbp - 0x90], rax
mov rcx, rbx
call fcn.1800b0100
mov rbx, rax
lea rcx, [0x180159ed0]
mov edx, 0x20
call fcn.180004570
mov qword [rbp - 0x98], rax
lea rcx, [0x180159ed0]
mov edx, 0x10
call fcn.180004570
mov qword [rbp - 0xa0], rax
lea rcx, [0x180159ed0]
mov edx, 1
call fcn.180004570
mov rsi, rax
mov edx, dword [rbx + 8]
sub edx, 0x31
movsxd rdx, edx
lea rcx, [0x180159ed0]
call fcn.180004570
mov qword [rbp - 0xa8], rax
mov r8d, dword [rax + 8]
mov rcx, rbx
mov rdx, rax
call fcn.180087920
mov dword [rsp + 0x20], 0x20
mov rdx, qword [rbp - 0xa8]
mov edx, dword [rdx + 8]
mov rcx, rbx
mov r8, qword [rbp - 0x98]
xor r9d, r9d
call fcn.180087a00
mov dword [rsp + 0x20], 0x10
mov rdx, qword [rbp - 0xa8]
mov edi, dword [rdx + 8]
add edi, 0x20
mov edx, edi
mov rcx, rbx
mov r8, qword [rbp - 0xa0]
xor r9d, r9d
call fcn.180087a00
mov dword [rsp + 0x20], 1
lea edx, [rdi + 0x10]
mov rcx, rbx
mov r8, rsi
xor r9d, r9d
call fcn.180087a00
cmp byte [rsi + 0x10], 1
jne 0x180077363
call fcn.180077010
test eax, eax
jne 0x180077363
call fcn.180076b60
nop
lea rcx, [0x18014aad8]
call fcn.180004450
mov rbx, rax
mov rcx, rbx
call fcn.1800ed9c0
mov rcx, rbx
mov edx, 1
call fcn.1800ee2a0
mov rcx, rbx
mov edx, 2
call fcn.1800ee2f0
mov rcx, rbx
mov rdx, qword [rbp - 0x98]
call fcn.1800ee160
mov rcx, rbx
mov rdx, qword [rbp - 0xa0]
call fcn.1800ee0e0
mov rcx, rbx
call fcn.1800edb20
mov qword [rbp - 0xb0], rax
mov rdx, qword [rbp - 0xa8]
mov r9d, dword [rdx + 8]
mov rcx, rax
lea r10, [0x18013e550]
xor r8d, r8d
call qword [r10]
mov rbx, rax
mov rcx, rbx
call fcn.180074eb0
mov rsi, rax
lea rcx, [0x18013eb68]
call fcn.180004450
mov rdi, rax
lea rcx, [0x180141178]
call fcn.180004450
mov r14, rax
mov rcx, r14
call fcn.180090850
lea rcx, [rdi + 8]
mov rdx, r14
call fcn.180004660
mov rcx, rsi
call fcn.180075050
mov rsi, rax
lea rcx, [0x18014c728]
call fcn.180004450
mov r14, rax
mov rcx, r14
mov rdx, rdi
call fcn.180001901
lea rcx, [0x18014c5e8]
call fcn.180004450
mov rdi, rax
xor ecx, ecx
mov dword [rsp + 0x20], ecx
mov qword [rsp + 0x28], rcx
mov rcx, rdi
mov rdx, rsi
mov r8, r14
xor r9d, r9d
call fcn.1801073d0
mov rdx, rdi
lea rcx, [0x18013c388]
call fcn.1801204c0
mov rsi, rax
xor edi, edi
mov ecx, dword [rsi + 0x10]
dec ecx
test ecx, ecx
jle 0x180077524
cmp edi, dword [rsi + 0x10]
jae 0x18007752d
mov rcx, qword [rsi + 8]
cmp edi, dword [rcx + 8]
jae 0x180077527
mov r14, qword [rcx + rdi*8 + 0x10]
mov rcx, rbx
xor edx, edx
call fcn.18010e290
mov r15, rax
test r14, r14
je 0x1800774c4
lea r13, [r14 + 0xc]
mov r14d, dword [r14 + 8]
jmp 0x1800774ca
xor r13d, r13d
xor r14d, r14d
lea rcx, [0x18013ebb8]
call fcn.180004450
mov r12, rax
mov qword [rbp - 0x48], r13
mov dword [rbp - 0x40], r14d
mov qword [r12 + 0x10], r15
lea rcx, [rbp - 0x48]
call fcn.1800f18a0
lea rcx, [r12 + 8]
mov rdx, rax
call fcn.180004660
nop
mov rcx, r12
call fcn.180077980
test rax, rax
jne 0x180077524
mov ecx, 0x12c
call fcn.1800a6650
nop
inc edi
mov eax, dword [rsi + 0x10]
dec eax
cmp edi, eax
jl 0x18007748d
nop
jmp 0x180077533
call fcn.1800c4b80
int3
call fcn.180091f80
int3
call fcn.180077010
test eax, eax
jne 0x1800777b0
mov rcx, qword [rbp - 0x90]
call fcn.1800affd0
test eax, eax
je 0x1800777b0
mov rcx, qword [rbp - 0x90]
call fcn.1800b0100
mov rbx, rax
mov r9d, dword [rbx + 8]
mov rcx, qword [rbp - 0xb0]
mov rdx, rbx
lea r10, [0x18013e550]
xor r8d, r8d
call qword [r10]
mov rbx, rax
lea rcx, [0x18013ce00]
cmp qword [rcx - 8], 0
jne 0x1800777d4
mov rsi, qword [0x1801ec528]
mov rcx, qword [rsi + 8]
mov rdx, rbx
call fcn.1800caf10
mov rdi, rax
lea rcx, [0x180143198]
call fcn.180004450
mov r14, rax
mov rcx, r14
mov edx, 3
mov r8d, 0x7fffffff
call fcn.1800a9280
mov edx, 0x5c
mov rcx, r14
call fcn.1800a9860
mov edx, 0x7c
mov rcx, r14
call fcn.1800a9860
mov edx, 0x2f
mov rcx, r14
call fcn.1800a9860
mov rcx, r14
call fcn.1800a9340
mov rdx, rax
cmp byte [rdi], dil
lea rcx, [0x180123a28]
test rdx, rdx
cmove rdx, rcx
xor ecx, ecx
mov dword [rsp + 0x20], ecx
mov rcx, rdi
xor r8d, r8d
mov r9d, 0x7fffffff
call fcn.180084c60
cmp dword [rax + 8], 0
jbe 0x18007780b
mov rdi, qword [rax + 0x10]
mov rcx, qword [rsi + 8]
mov rdx, rbx
call fcn.1800caf10
mov r14, rax
lea rcx, [0x180143198]
call fcn.180004450
mov r15, rax
mov rcx, r15
mov edx, 3
mov r8d, 0x7fffffff
call fcn.1800a9280
mov edx, 0x5c
mov rcx, r15
call fcn.1800a9860
mov edx, 0x7c
mov rcx, r15
call fcn.1800a9860
mov edx, 0x2f
mov rcx, r15
call fcn.1800a9860
mov rcx, r15
call fcn.1800a9340
mov rdx, rax
cmp byte [r14], r14b
lea rcx, [0x180123a28]
test rdx, rdx
cmove rdx, rcx
xor ecx, ecx
mov dword [rsp + 0x20], ecx
mov rcx, r14
xor r8d, r8d
mov r9d, 0x7fffffff
call fcn.180084c60
cmp dword [rax + 8], 1
jbe 0x18007780b
mov r14, qword [rax + 0x18]
mov rcx, qword [rsi + 8]
mov rdx, rbx
call fcn.1800caf10
mov rbx, rax
lea rcx, [0x180143198]
call fcn.180004450
mov rsi, rax
mov rcx, rsi
mov edx, 3
mov r8d, 0x7fffffff
call fcn.1800a9280
mov edx, 0x5c
mov rcx, rsi
call fcn.1800a9860
mov edx, 0x7c
mov rcx, rsi
call fcn.1800a9860
mov edx, 0x2f
mov rcx, rsi
call fcn.1800a9860
mov rcx, rsi
call fcn.1800a9340
mov rdx, rax
cmp byte [rbx], bl
lea rcx, [0x180123a28]
test rdx, rdx
cmove rdx, rcx
xor ecx, ecx
mov dword [rsp + 0x20], ecx
mov rcx, rbx
xor r8d, r8d
mov r9d, 0x7fffffff
call fcn.180084c60
cmp dword [rax + 8], 2
jbe 0x18007780b
mov rax, qword [rax + 0x20]
test rax, rax
je 0x180077800
lea rbx, [rax + 0xc]
mov esi, dword [rax + 8]
mov qword [rbp - 0x88], rbx
mov dword [rbp - 0x80], esi
call fcn.1800a01c0
mov r8, rax
lea rcx, [rbp - 0x88]
lea r9, [rbp - 0x50]
mov edx, 7
call fcn.180114fc0
test eax, eax
jne 0x1800777de
mov r9d, dword [rbp - 0x50]
mov rdx, rdi
mov r8, r14
xor ecx, ecx
call fcn.180077060
call fcn.18007ac10
mov rcx, rax
cmp dword [rcx], ecx
call fcn.18007af70
nop
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.180001501
jmp 0x180077593
cmp eax, 1
je 0x1800777e9
call fcn.18011ca00
int3
mov qword [rbp - 0x88], rbx
mov dword [rbp - 0x80], esi
lea rcx, [rbp - 0x88]
call fcn.1801100e0
int3
mov ecx, 0x11
call fcn.180092150
int3
call fcn.1800c4b80
int3