Function at 0x180005f68
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x60
xor ebx, ebx
mov dword [rbp - 0xc], ebx
mov dword [rbp - 0x18], 0x8c6
mov dword [rbp - 8], ebx
mov dword [rbp - 0x20], 0x9ff
lea edi, [rbx + 1]
mov dword [rbp - 0x1c], 0x724
mov dword [rbp - 0x10], 0x824
mov dword [rbp - 0x14], 0x670
mov ecx, dword [rbp - 0x18]
mov eax, dword [rbp - 8]
xor ecx, 0x19d
cmp eax, ecx
jg 0x1800061fd
mov ecx, dword [rbp - 0x1c]
mov eax, dword [rbp - 0xc]
add ecx, 0x2cc
cmp eax, ecx
jg 0x180006184
mov ecx, dword [rbp - 0x10]
mov eax, dword [rbp - 0x18]
add ecx, 0xffffff00
cmp eax, ecx
jle 0x1800060e9
add dword [rbp - 0x18], 0xffffff1c
mov rax, qword [section..data]
mov dword [0x18022f014], ebx
mov qword [0x18022f020], rbx
mov dword [0x18022f02c], edi
mov dword [0x18022f038], 0x11
mov dword [0x18022f048], ebx
mov dword [0x18022f058], ebx
mov dword [rax + 0x50], ebx
mov rax, qword [section..data]
mov dword [0x18022f06c], ebx
mov dword [0x18022f074], ebx
mov dword [rax + 0x6c], ebx
mov rax, qword [section..data]
mov dword [0x18022f088], 0x12
mov dword [rax + 0x8c], 3
mov rax, qword [section..data]
mov dword [0x18022f0a4], edi
mov dword [0x18022f0b4], 0x14
mov dword [rax + 0xb4], ebx
mov rax, qword [section..data]
mov dword [0x18022f0ec], edi
mov dword [0x18022f104], ebx
mov dword [rax + 0xf8], ebx
mov rax, qword [section..data]
mov dword [0x18022f110], edi
mov dword [0x18022f118], edi
mov dword [0x18022f11c], edi
mov dword [0x18022f124], edi
mov dword [0x18022f130], edi
mov dword [0x18022f144], 0x47
mov dword [0x18022f154], ebx
mov dword [0x18022f160], edi
mov dword [rax + 0x15c], 0xa
mov rax, qword [section..data]
mov dword [rax + 0x168], ebx
mov rax, qword [section..data]
mov dword [rax + 0x16c], ebx
jmp 0x180006184
mov edx, dword [rbp - 0xc]
jmp 0x180006117
mov ecx, dword [rbp - 0x20]
or ecx, dword [0x18022f01c]
mov eax, dword [0x18022f13c]
sub eax, ecx
add dword [0x18022f11c], eax
mov eax, dword [rbp - 0x1c]
add eax, dword [0x18022f080]
or dword [0x18022f070], eax
add edx, 4
mov ecx, dword [rbp - 0x1c]
mov eax, dword [rbp - 0x20]
and ecx, eax
cmp edx, ecx
jl 0x1800060ee
mov ecx, dword [rbp - 0x14]
mov eax, dword [rbp - 0xc]
add eax, ecx
mov ecx, dword [0x18022f048]
and rcx, rax
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
mov rcx, qword [section..data]
mov eax, 0xfffff990
sub eax, dword [rcx + 0x14]
add dword [rcx + 0x10], eax
mov ecx, dword [rbp - 0x14]
mov eax, dword [rbp - 0x20]
sub ecx, eax
or ecx, dword [0x18022f09c]
mov rax, qword [section..data]
or dword [rax + 0x70], ecx
mov rax, qword [section..data]
mov ecx, dword [rax + 0xb4]
mov eax, dword [rbp - 0xc]
xor ecx, dword [0x18022f048]
add eax, 0x95b
add ecx, eax
mov dword [rbp - 0xc], ecx
xor dword [rbp - 0x18], 0xc6
mov rax, qword [section..data]
cmp dword [rax + 0x28], 0x3111
je 0x1800061ac
mov eax, dword [0x18022f048]
add eax, 0xdda09
mov dword [0x18022f0a4], eax
mov ecx, dword [rbp - 8]
mov r8d, dword [rbp - 0x1c]
add ecx, 0x824
mov r9d, dword [rbp - 0x20]
mov eax, dword [rbp - 0x10]
sub r9d, 0xf
mov rdx, qword [section..data]
mov dword [rsp + 0x20], eax
call fcn.18000526c
cmp dword [0x18022f0a4], 0xdf1
mov dword [rbp - 8], eax
jbe 0x1800061f6
mov rcx, qword [section..data]
mov eax, dword [rcx + 0xfc]
mov dword [rcx + 0xb8], eax
xor dword [rbp - 0x14], 0xad
mov ecx, dword [rbp - 0x10]
mov eax, dword [rbp - 0x20]
cmp ecx, eax
jge 0x18000648b
xor dword [rbp - 0x14], 0xad
mov eax, 0xb4
mov ecx, dword [rbp - 0x1c]
mov r8d, dword [rbp - 0x1c]
sub ecx, eax
mov r9d, dword [rbp - 0xc]
xor r8d, eax
mov r11d, dword [rbp - 8]
add r9d, 0x670
mov r10d, dword [rbp - 0x18]
add r11d, 0x106
mov eax, dword [rbp - 0x10]
add r10d, 0x1a2
mov rdx, qword [section..data]
add eax, 0x1db
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], r11d
call fcn.180005470
mov rdx, qword [section..data]
mov dword [rbp - 8], eax
mov ecx, dword [0x18022f0b4]
mov rax, qword [0x18022f0d8]
mov r9d, dword [rax + rbx]
add rbx, 4
mov eax, dword [rdx + 0x14]
imul r9d, dword [0x18022f094]
sub eax, 0x14c3da
or dword [0x18022f074], eax
mov eax, dword [0x18022f124]
xor eax, edi
add dword [0x18022f06c], eax
mov eax, 0x11
sub eax, dword [0x18022f038]
add dword [0x18022f058], eax
lea eax, [rcx - 0x14]
xor ecx, eax
mov eax, 0x319a998f
mov dword [0x18022f0b4], ecx
mov ecx, dword [rdx + 0x134]
xor ecx, dword [0x18022f0a4]
sub eax, ecx
add dword [rdx + 4], eax
mov edx, r9d
movsxd rcx, dword [0x18022f098]
mov rax, qword [0x18022f0e0]
shr edx, 0x10
mov byte [rcx + rax], dl
mov edx, r9d
mov r8d, dword [0x18022f098]
mov eax, dword [0x18022f0ec]
add r8d, edi
mov ecx, dword [0x18022f118]
add eax, 0xfffffffe
add ecx, eax
mov dword [0x18022f098], r8d
or dword [0x18022f144], ecx
mov rax, qword [0x18022f0e0]
movsxd rcx, r8d
shr edx, 8
mov byte [rcx + rax], dl
mov ecx, dword [0x18022f098]
mov eax, dword [0x18022f108]
add ecx, edi
add eax, 0xfff58e32
mov dword [0x18022f098], ecx
xor dword [0x18022f154], eax
mov rax, qword [0x18022f0e0]
movsxd rcx, ecx
mov byte [rcx + rax], r9b
add dword [0x18022f098], edi
mov rcx, qword [section..data]
mov eax, dword [0x18022f130]
sub eax, dword [rcx + 4]
sub eax, edi
add dword [rcx + 0x64], eax
mov rdx, qword [section..data]
mov eax, dword [0x18022f144]
add eax, 0xffffffa7
mov ecx, dword [rdx + 0x78]
add ecx, eax
mov eax, dword [0x18022f104]
xor dword [0x18022f17c], ecx
add eax, 0xffe3aa2f
or dword [0x18022f0ec], eax
cmp rbx, 0x1cf30
jl 0x180006270
add dword [rbp - 0x14], 0x1f9
xor dword [rbp - 0x20], 0xe6f
xor dword [rbp - 0x10], 0xeca
mov ecx, dword [rbp - 0x10]
mov r8d, dword [rbp - 0x10]
add ecx, 0x36
mov r9d, dword [rbp - 0x18]
add r8d, 0x26d
mov r10d, dword [rbp - 0x10]
add r9d, 0x100
mov edx, dword [rbp - 0xc]
add r10d, 0x54
mov eax, dword [rbp - 0x1c]
add edx, 0x9f0
sub eax, 0x6c
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], edx
lea rdx, [0x18022f010]
mov dword [rsp + 0x20], r10d
call fcn.180007230
mov dword [rbp - 0x18], eax
lea rcx, [0x1800081d0]
add dword [rbp - 0x1c], 0x2cc
mov rax, qword [section..data]
cmp dword [rax + 0x64], 0x129cf
cmovae rcx, qword [0x18022f0d8]
mov qword [0x18022f0d8], rcx
mov ecx, dword [rbp - 0x14]
mov edx, dword [rbp - 0x20]
xor ecx, 0xe19
mov r9d, dword [rbp - 0x20]
xor edx, 0xfb4
mov r11d, dword [rbp - 0x18]
add r9d, 0x15a
mov r10d, dword [rbp - 0x20]
mov eax, dword [rbp - 0x14]
sub r10d, 0x6c
mov r8, qword [section..data]
xor eax, 0xed1
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], r11d
call sym.xxubcoh481gq.dll_IXG
mov dword [rbp - 0x20], eax
mov eax, dword [0x18022f114]
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x60
pop rbp
ret