Function at 0x180001744
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov esi, dword [rsp + 0x98]
lea edi, [r8 - 0x2a4d]
mov rbx, qword [rsp + 0x90]
lea r13d, [rcx - 0x2191]
add esi, 0xfffff884
mov r14d, r9d
mov ebp, ecx
xor r14d, 0xe9c
xor ebp, 0x2191
xor r12d, r12d
mov r10d, ecx
mov r15d, ebp
lea eax, [rsi - 0x9b4]
cmp ebp, eax
jge 0x1800019a4
mov eax, dword [rbx + 0x11c]
cmp dword [0x1800e80d0], eax
ja 0x1800017d4
mov eax, dword [rbx + 0x3c]
sub eax, dword [rbx + 0xf0]
add eax, 0x1fd964
xor dword [rbx + 0x28], eax
mov rcx, qword [section..data]
jmp 0x1800017ea
mov rcx, qword [section..data]
mov eax, dword [rcx + 0x1c]
add eax, dword [0x1800e8150]
add dword [0x1800e8038], eax
mov eax, dword [rcx + 0x6c]
lea edx, [r14 + 0xbd]
xor eax, dword [0x1800e8058]
mov r8d, r13d
add eax, 0xd5308
xor r8d, 0x3082
mov dword [rcx + 0x98], eax
mov r9d, ebp
lea eax, [r13 + 0x2a4d]
xor r9d, 0x2f0d
mov dword [rsp + 0x30], eax
lea ecx, [rdi + 0x2b45]
mov dword [rsp + 0x28], r8d
mov r8d, r10d
mov qword [rsp + 0x20], rbx
call fcn.180007f98
mov rcx, qword [section..data]
mov r15d, eax
lea rax, [0x1800160a0]
mov r9, r12
xor dword [rcx + 0x98], 0xba29f367
mov rcx, qword [section..data]
xor r13d, 0x2fd2
mov qword [rcx + 0xc8], rax
mov rax, qword [section..data]
mov ecx, dword [rax + 0x138]
xor ecx, dword [rbx + 0x140]
xor ecx, 1
mov dword [rbx + 0x140], ecx
mov rcx, qword [section..data]
mov rax, qword [rcx + 0xc8]
mov r8d, dword [r9 + rax]
add r9, 4
mov eax, dword [rbx]
sub eax, dword [rbx + 0xac]
xor eax, 0x3565d6
or dword [0x1800e80bc], eax
mov eax, dword [0x1800e808c]
sub eax, dword [0x1800e807c]
sub eax, 0x739fc
add dword [rcx + 0x58], eax
mov eax, 0x52734
sub eax, dword [0x1800e807c]
sub eax, dword [0x1800e8038]
add dword [0x1800e8058], eax
imul r8d, dword [0x1800e80a8]
mov eax, dword [0x1800e8098]
add eax, 0xfd77e3fc
add dword [0x1800e8100], eax
movsxd rcx, dword [rbx + 0x9c]
mov rax, qword [0x1800e80e0]
mov edx, r8d
shr edx, 0x10
mov byte [rcx + rax], dl
mov edx, r8d
inc dword [rbx + 0x9c]
mov rax, qword [section..data]
shr edx, 8
movsxd rcx, dword [rax + 0x9c]
mov rax, qword [0x1800e80e0]
mov byte [rcx + rax], dl
mov rax, qword [section..data]
inc dword [rax + 0x9c]
movsxd rcx, dword [rbx + 0x9c]
mov rax, qword [0x1800e80e0]
mov byte [rcx + rax], r8b
mov eax, 0xfff8df27
inc dword [rbx + 0x9c]
mov rcx, qword [section..data]
sub eax, dword [rcx + 0x34]
sub eax, dword [0x1800e8038]
add dword [rcx + 0x140], eax
mov rcx, qword [section..data]
mov eax, dword [rcx + 0xe0]
add eax, dword [0x1800e8060]
sub dword [0x1800e8024], eax
mov eax, dword [rcx + 0xac]
dec eax
or dword [rbx + 0x50], eax
cmp r9, 0xca0
jl 0x18000186f
mov eax, r14d
xor eax, 0x19c6
cmp esi, eax
jg 0x1800019e1
mov rax, qword [section..data]
cmp dword [rax + 0x50], 0x6a62
jne 0x1800019c9
xor dword [rax + 0x34], 0x1e345
jmp 0x1800019e1
mov ecx, dword [rax + 0xf0]
add ecx, 0x93ecdaf
add ecx, dword [rbx + 0xe0]
mov dword [rbx + 0x98], ecx
mov eax, edi
xor eax, 0x224e
cmp r15d, eax
je 0x1800019fd
lea rax, [0x180019c40]
mov qword [rbx + 0xc8], rax
jmp 0x180001a1e
mov eax, dword [0x1800e8120]
add eax, 0xffffda3d
or eax, dword [0x1800e808c]
cmp ebp, eax
jbe 0x180001a1e
mov eax, dword [0x1800e80e8]
sub eax, esi
imul r14d, eax
lea eax, [r15 + 0x77c]
cmp esi, eax
je 0x180001ddb
lea eax, [rsi - 0x9c4]
cmp r14d, eax
jle 0x180001c3a
lea eax, [rsi - 0xb8b]
cmp r14d, eax
je 0x180001c0b
mov rdx, qword [section..data]
mov r9, r12
mov eax, dword [rdx + 0x94]
xor eax, dword [0x1800e8038]
sub eax, 0x5272f
xor dword [rbx + 0xe0], eax
mov eax, dword [rbx + 0xf0]
mov ecx, dword [0x1800e80bc]
sub eax, 0x17d163
imul ecx, eax
mov rax, qword [0x1800e80d8]
mov dword [0x1800e80bc], ecx
mov r8d, dword [r9 + rax]
add r9, 4
mov rax, qword [section..data]
mov ecx, dword [rax + 0x6c]
sub ecx, 5
add dword [rbx + 0x114], ecx
mov rax, qword [section..data]
mov edx, dword [0x1800e8024]
add edx, 0xc8b29
add edx, dword [rax + 0xe0]
mov eax, dword [rbx + 0x40]
imul eax, edx
mov dword [rbx + 0x40], eax
mov eax, dword [rbx + 0x14]
mov rcx, qword [section..data]
xor eax, 0xfff374d8
sub dword [rcx + 0x48], eax
mov eax, dword [rbx + 0xac]
mov rcx, qword [section..data]
dec eax
imul r8d, dword [rcx + 0x98]
xor dword [rcx + 0x48], eax
movsxd rcx, dword [0x1800e80ac]
mov rax, qword [0x1800e80e0]
mov edx, r8d
shr edx, 8
mov byte [rcx + rax], dl
inc dword [0x1800e80ac]
mov ecx, dword [0x1800e8038]
mov rdx, qword [section..data]
mov eax, dword [rdx + 0x34]
add eax, 0xc4809
imul ecx, eax
mov eax, dword [0x1800e8058]
add eax, 0xfffad8d0
mov dword [0x1800e8038], ecx
mov ecx, dword [rdx + 0x28]
add ecx, eax
xor dword [rdx + 0x138], ecx
mov rax, qword [section..data]
movsxd rcx, dword [rax + 0x9c]
mov rax, qword [rbx + 0xd0]
mov byte [rcx + rax], r8b
mov rax, qword [section..data]
inc dword [rax + 0x9c]
mov eax, dword [rbx + 0x94]
add dword [0x1800e8038], eax
mov eax, dword [0x1800e802c]
add eax, 0xffe62d9b
or dword [rbx + 0x6c], eax
mov eax, 0x73a01
sub eax, dword [0x1800e808c]
add dword [rbx + 0x3c], eax
mov eax, 0xfff3b7f8
mov rdx, qword [section..data]
sub eax, dword [rdx + 0x34]
add dword [0x1800e80f0], eax
cmp r9, 0x7800
jl 0x180001a55
cmp dword [rdx + 0xdc], 0x3beb
jbe 0x180001bd3
lea rax, [0x1800e8010]
mov qword [0x1800e8130], rax
jmp 0x180001be4
mov eax, dword [rbx + 0x138]
add eax, 0xeec6
mov dword [0x1800e812c], eax
mov eax, dword [0x1800e8038]
cmp dword [rbx + 0x1c], eax
je 0x180001c41
mov eax, dword [rbx + 0x18]
add eax, dword [0x1800e8020]
add eax, dword [0x1800e8114]
xor eax, 0xd8b2b2c1
mov dword [0x1800e814c], eax
jmp 0x180001c41
mov eax, dword [0x1800e8094]
or eax, r13d
cmp ebp, eax
jae 0x180001c3a
mov edx, dword [rbx + 0xdc]
mov eax, edi
imul eax, ebp
or rdx, 0x2f0d
movsxd rcx, eax
xor rcx, 0x2d2f
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rdx, qword [section..data]
lea eax, [rsi + 0x3c8]
cmp r14d, eax
jge 0x180001cd1
mov eax, dword [rdx + 0xb0]
mov rcx, qword [0x1800e8108]
xor dword [r12 + rcx], eax
add r12, 4
mov rcx, qword [section..data]
mov eax, dword [0x1800e8024]
sub eax, dword [rcx + 0x140]
xor eax, 0xffe4b2f6
add dword [rcx + 0x7c], eax
mov eax, dword [0x1800e8110]
add dword [rbx + 0xb0], eax
mov rax, qword [section..data]
mov ecx, dword [rax + 0x138]
add ecx, dword [rbx + 0x1c]
xor ecx, 0x19d266
sub dword [rbx + 0x48], ecx
cmp r12, 0xd957c
jge 0x180001cb7
mov rdx, qword [section..data]
jmp 0x180001c50
mov rax, qword [section..data]
mov rcx, qword [rbx + 0xf8]
mov qword [rax + 0xb8], rcx
jmp 0x180001ddb
mov eax, dword [rdx + 0xd8]
imul eax, edi
or eax, esi
cmp ebp, eax
jne 0x180001dbf
mov eax, edi
sub eax, r15d
xor eax, edi
cmp ebp, eax
je 0x180001ddb
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov eax, dword [0x1800e8024]
mov edx, eax
mov rcx, qword [section..data]
sub edx, r14d
mov r8d, dword [0x1800e80e8]
mov r14d, 0x3082
add edx, dword [0x1800e8150]
and r8d, r13d
lea r9d, [rax + rbp]
mov eax, dword [rbx + 0x14]
xor r8d, dword [rcx + 0x28]
and eax, r14d
and r9d, dword [0x1800e8080]
or eax, edi
mov dword [rsp + 0x20], eax
call fcn.180006c7c
mov r11d, dword [0x1800e80ec]
lea r10d, [rdi + r13]
mov r8d, dword [rbx + 0x50]
mov r15d, eax
mov rax, qword [section..data]
xor r11d, r13d
mov ecx, dword [0x1800e8030]
xor r11d, r14d
add r8d, dword [0x1800e807c]
mov edx, r15d
or r8d, dword [0x1800e8034]
and r10d, r15d
mov qword [rsp + 0x30], rax
or esi, 0x3117
mov dword [rsp + 0x28], r11d
or ecx, ebp
xor edx, 0x32c1
mov dword [rsp + 0x20], r10d
mov r9d, esi
call fcn.1800064ac
mov rcx, qword [section..data]
mov edx, dword [rbx + 0x1c]
mov eax, eax
mov ecx, dword [rcx + 0x94]
xor rcx, rdx
or rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x180001ddb
mov eax, dword [0x1800e8064]
xor eax, dword [rbx + 0x20]
add eax, 0x1fba
cmp dword [rbx + 0xf0], eax
jbe 0x180001ddb
or edi, r15d
mov dword [rbx + 0x20], edi
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
lea eax, [r15 - 0x582]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret