Function at 0x11003df70
Capabilities:
Encode data using xor
Write file on windows

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rdx
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x20], r9
push rbp
push rbx
push rdi
lea rbp, [r11 - 0x9b8]
sub rsp, 0xaa0
mov rax, qword [0x110109588]
xor rax, rsp
mov qword [rbp + 0x980], rax
cmp byte [rcx + 0x90], 0
mov rbx, rdx
mov rdi, rcx
je 0x11003e2c8
cmp dword [rcx + 0x84], 0
je 0x11003e2c8
mov qword [r11 - 0x20], rsi
lea rsi, [rbp + 0x9d0]
call fcn.110001a60
mov r9, rbx
mov qword [rsp + 0x28], rsi
mov rbx, 0xffffffffffffffff
mov qword [rsp + 0x20], 0
mov r8, rbx
lea rdx, [rbp + 0x480]
mov rcx, qword [rax]
or rcx, 1
call fcn.1100a870c
cmp byte [rdi + 0x88], 0
movzx ecx, byte [rdi + 0x89]
je 0x11003e14a
mov esi, dword [rdi + 0x80]
lea eax, [rsi + 1]
mov dword [rdi + 0x80], eax
test cl, cl
je 0x11003e0ef
mov rcx, qword [0x110207df0]
lea rdx, [rsp + 0x58]
call fcn.110038cd0
cmp qword [rsp + 0x70], 0x10
lea r9, [rsp + 0x58]
mov dword [rsp + 0x48], 0x8ab2f08f
cmovae r9, qword [rsp + 0x58]
xor eax, eax
mov byte [rsp + 0x54], al
xor edx, edx
mov dword [rsp + 0x4c], 0xe1a9fcf8
mov dword [rsp + 0x50], 0xd5adf8fc
nop dword [rax]
movsxd rax, edx
lea rcx, [rsp + 0x48]
add rcx, rax
lea eax, [rdx - 0x2c]
inc edx
xor byte [rcx], al
cmp edx, 0xc
jb 0x11003e070
lea rax, [rbp + 0x480]
mov byte [rsp + 0x54], 0
mov r8d, esi
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x80]
call qword [sym.imp.user32.dll_wsprintfA]
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x11003e242
mov rcx, qword [rsp + 0x58]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x11003e1fa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x11003e2e8
jmp 0x11003e1fa
xor eax, eax
mov dword [rsp + 0x48], 0x8ab2f08f
mov byte [rsp + 0x50], al
xor edx, edx
mov dword [rsp + 0x4c], 0xd1a9fcf8
nop word [rax + rax]
movsxd rax, edx
lea rcx, [rsp + 0x48]
add rcx, rax
lea eax, [rdx - 0x2c]
inc edx
xor byte [rcx], al
cmp edx, 8
jb 0x11003e110
lea r9, [rbp + 0x480]
mov byte [rsp + 0x50], 0
mov r8d, esi
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x80]
call qword [sym.imp.user32.dll_wsprintfA]
jmp 0x11003e242
test cl, cl
je 0x11003e201
mov rcx, qword [0x110207df0]
lea rdx, [rsp + 0x58]
call fcn.110038cd0
cmp qword [rsp + 0x70], 0x10
lea r8, [rsp + 0x58]
mov dword [rsp + 0x48], 0x8aa5f08f
cmovae r8, qword [rsp + 0x58]
xor eax, eax
mov byte [rsp + 0x50], al
xor edx, edx
mov dword [rsp + 0x4c], 0xd1a9fcf8
nop dword [rax]
movsxd rax, edx
lea rcx, [rsp + 0x48]
add rcx, rax
lea eax, [rdx - 0x2c]
inc edx
xor byte [rcx], al
cmp edx, 8
jb 0x11003e190
lea r9, [rbp + 0x480]
mov byte [rsp + 0x50], 0
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x80]
call qword [sym.imp.user32.dll_wsprintfA]
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x11003e242
mov rcx, qword [rsp + 0x58]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x11003e1fa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x11003e2e2
call fcn.11009afc0
jmp 0x11003e242
mov dword [rsp + 0x40], 0xdca6f1
xor edx, edx
nop dword [rax + rax]
movsxd rax, edx
lea rcx, [rsp + 0x40]
add rcx, rax
lea eax, [rdx - 0x2c]
inc edx
xor byte [rcx], al
cmp edx, 3
jb 0x11003e210
lea r8, [rbp + 0x480]
mov byte [rsp + 0x43], 0
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call qword [sym.imp.user32.dll_wsprintfA]
xor r9d, r9d
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov edx, 0x40000000
mov rcx, rdi
mov dword [rsp + 0x20], 4
lea r8d, [r9 + 1]
call qword [sym.imp.kernel32.dll_CreateFileA]
mov rdi, rax
cmp rax, rbx
je 0x11003e2c0
mov r9d, 2
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.kernel32.dll_SetFilePointer]
lea rax, [rbp - 0x80]
inc rbx
cmp byte [rax + rbx], 0
jne 0x11003e290
mov r8, rbx
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x44]
mov rcx, rdi
lea rdx, [rbp - 0x80]
call qword [sym.imp.kernel32.dll_WriteFile]
mov rcx, rdi
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rsi, qword [rsp + 0xa98]
mov rcx, qword [rbp + 0x980]
xor rcx, rsp
call fcn.11009af60
add rsp, 0xaa0
pop rdi
pop rbx
pop rbp
ret
call fcn.1100a900c
int3
call fcn.1100a900c
int3