Function at 0x1000f0180
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x18], r8d
sub rsp, 0x68
test r8d, r8d
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rdi
mov esi, r8d
mov rbx, rcx
mov rdi, rdx
je 0x1000f01d4
nop
nop
mov eax, dword [rcx + 0x68]
cmp eax, 8
jae 0x1000f01cd
mov rdx, rax
movzx eax, byte [rdi]
inc rdi
mov byte [rdx + rcx + 0x60], al
inc dword [rcx + 0x68]
add esi, 0xffffffff
jne 0x1000f01b0
mov dword [rsp + 0x80], esi
cmp dword [rcx + 0x68], 8
jb 0x1000f0ae8
mov ecx, dword [rcx + 0x78]
mov edx, dword [rbx + 0x64]
mov eax, esi
xor ecx, dword [rbx + 0x60]
xor edx, dword [rbx + 0x7c]
shr eax, 3
mov dword [rsp + 0x70], eax
mov eax, ecx
mov r10d, edx
shl eax, 8
shr r10d, 8
mov r11d, ecx
shl ecx, 8
shr r11d, 8
mov qword [rsp + 0x60], rbp
xor r11d, eax
lea rbp, [0x100000000]
mov eax, edx
shl eax, 8
shl edx, 8
and r11d, 0xff00ff
xor r10d, eax
mov eax, dword [rbx]
xor r11d, ecx
mov ecx, dword [rbx + 4]
and r10d, 0xff00ff
rol r11d, 0x10
xor r10d, edx
mov qword [rsp + 0x48], r12
rol r10d, 0x10
lea edx, [r10 + rax]
rol edx, cl
mov r9d, edx
mov eax, edx
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
mov eax, dword [rbx + 8]
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, dword [rbx + 0xc]
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r11d, r8d
xor eax, r11d
rol eax, cl
mov ecx, dword [rbx + 0x14]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x10]
xor r10d, r8d
sub eax, r10d
rol eax, cl
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
add r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
xor r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
sub r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x18]
xor r11d, r8d
lea edx, [r11 + rax]
mov ecx, dword [rbx + 0x1c]
rol edx, cl
mov r9d, edx
mov eax, edx
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, dword [rbx + 0x24]
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r10d, r8d
mov eax, r10d
xor eax, dword [rbx + 0x20]
rol eax, cl
mov ecx, dword [rbx + 0x2c]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x28]
xor r11d, r8d
sub eax, r11d
rol eax, cl
mov ecx, dword [rbx + 0x34]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
add r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
xor r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
sub r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x30]
xor r10d, r8d
lea edx, [r10 + rax]
rol edx, cl
mov r9d, edx
mov eax, edx
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
mov eax, dword [rbx + 0x38]
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, dword [rbx + 0x3c]
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r11d, r8d
xor eax, r11d
rol eax, cl
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
mov ecx, dword [rbx + 0x44]
shr r9, 0x10
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x40]
xor r10d, r8d
sub eax, r10d
rol eax, cl
mov ecx, dword [rbx + 0x4c]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
add r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
xor r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
sub r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x48]
xor r11d, r8d
lea edx, [r11 + rax]
rol edx, cl
mov r9d, edx
mov eax, edx
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
mov eax, dword [rbx + 0x50]
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, dword [rbx + 0x54]
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r10d, r8d
xor eax, r10d
rol eax, cl
mov ecx, dword [rbx + 0x5c]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x58]
xor r11d, r8d
sub eax, r11d
rol eax, cl
mov r8d, eax
shr rax, 8
movzx edx, al
movzx eax, r8b
mov r9d, dword [rbp + rdx*4 + 0x2520]
add r9d, dword [rbp + rax*4 + 0x2920]
mov rax, r8
shr r8, 0x10
shr rax, 0x18
xor r9d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r8b
sub r9d, dword [rbp + rax*4 + 0x3120]
xor r9d, r10d
mov ebp, r9d
mov eax, r9d
shr ebp, 8
shl eax, 8
xor ebp, eax
and ebp, 0xff00ff
shl r9d, 8
mov ecx, dword [rsp + 0x70]
xor ebp, r9d
mov r12d, r11d
shr r12d, 8
rol ebp, 0x10
mov eax, r11d
shl eax, 8
shl r11d, 8
mov dword [rsp + 0x20], ebp
xor r12d, eax
and r12d, 0xff00ff
xor r12d, r11d
rol r12d, 0x10
test ecx, ecx
mov dword [rsp + 0x24], r12d
je 0x1000f0ac1
mov esi, dword [rbx + 0x18]
mov qword [rsp + 0x40], r13
mov r13d, dword [rbx + 4]
mov qword [rsp + 0x38], r14
mov r14d, dword [rbx]
mov qword [rsp + 0x30], r15
mov r15d, dword [rbx + 0xc]
movzx eax, byte [rdi]
add ecx, 0xffffffff
lea rbp, [0x100000000]
xor byte [rsp + 0x20], al
movzx eax, byte [rdi + 1]
mov dword [rsp + 0x70], ecx
xor byte [rsp + 0x21], al
movzx eax, byte [rdi + 2]
add rdi, 8
xor byte [rsp + 0x22], al
movzx eax, byte [rdi - 5]
xor byte [rsp + 0x23], al
movzx eax, byte [rdi - 4]
mov ecx, dword [rsp + 0x20]
xor byte [rsp + 0x24], al
movzx eax, byte [rdi - 3]
mov r11d, ecx
xor byte [rsp + 0x25], al
movzx eax, byte [rdi - 2]
shr r11d, 8
xor byte [rsp + 0x26], al
movzx eax, byte [rdi - 1]
xor byte [rsp + 0x27], al
mov eax, ecx
shl ecx, 8
shl eax, 8
xor r11d, eax
and r11d, 0xff00ff
xor r11d, ecx
mov ecx, dword [rsp + 0x24]
mov eax, ecx
mov r10d, ecx
shl ecx, 8
shl eax, 8
shr r10d, 8
rol r11d, 0x10
xor r10d, eax
and r10d, 0xff00ff
xor r10d, ecx
mov ecx, r13d
rol r10d, 0x10
lea eax, [r14 + r10]
rol eax, cl
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
mov eax, dword [rbx + 8]
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, r15d
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r11d, r8d
xor eax, r11d
rol eax, cl
mov ecx, dword [rbx + 0x14]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x10]
xor r10d, r8d
sub eax, r10d
rol eax, cl
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
mov ecx, dword [rbx + 0x1c]
add r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
xor r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
sub r8d, dword [rbp + rax*4 + 0x3120]
xor r11d, r8d
lea eax, [rsi + r11]
rol eax, cl
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
mov eax, dword [rbx + 0x20]
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, dword [rbx + 0x24]
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r10d, r8d
xor eax, r10d
rol eax, cl
mov ecx, dword [rbx + 0x2c]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x28]
xor r11d, r8d
sub eax, r11d
rol eax, cl
mov ecx, dword [rbx + 0x34]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
add r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
xor r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
sub r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x30]
xor r10d, r8d
add eax, r10d
rol eax, cl
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
mov eax, dword [rbx + 0x38]
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, dword [rbx + 0x3c]
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r11d, r8d
xor eax, r11d
rol eax, cl
mov r9d, eax
shr rax, 8
mov ecx, dword [rbx + 0x44]
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x40]
xor r10d, r8d
sub eax, r10d
rol eax, cl
mov ecx, dword [rbx + 0x4c]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
add r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
xor r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
sub r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x48]
xor r11d, r8d
add eax, r11d
rol eax, cl
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
xor r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x18
shr rax, 0x10
movzx ecx, al
mov eax, dword [rbx + 0x50]
add r8d, dword [rbp + rcx*4 + 0x3120]
mov ecx, dword [rbx + 0x54]
sub r8d, dword [rbp + r9*4 + 0x2d20]
xor r10d, r8d
xor eax, r10d
rol eax, cl
mov ecx, dword [rbx + 0x5c]
mov r9d, eax
shr rax, 8
movzx edx, al
movzx eax, r9b
mov r8d, dword [rbp + rdx*4 + 0x2520]
sub r8d, dword [rbp + rax*4 + 0x2920]
mov rax, r9
shr r9, 0x10
shr rax, 0x18
add r8d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r9b
xor r8d, dword [rbp + rax*4 + 0x3120]
mov eax, dword [rbx + 0x58]
xor r11d, r8d
sub eax, r11d
rol eax, cl
mov r8d, eax
shr rax, 8
movzx edx, al
movzx eax, r8b
mov r9d, dword [rbp + rdx*4 + 0x2520]
add r9d, dword [rbp + rax*4 + 0x2920]
mov rax, r8
shr r8, 0x10
shr rax, 0x18
xor r9d, dword [rbp + rax*4 + 0x2d20]
movzx eax, r8b
sub r9d, dword [rbp + rax*4 + 0x3120]
xor r9d, r10d
mov ebp, r9d
mov ecx, dword [rsp + 0x70]
shr ebp, 8
mov eax, r9d
shl eax, 8
shl r9d, 8
mov r12d, r11d
xor ebp, eax
shr r12d, 8
mov eax, r11d
and ebp, 0xff00ff
shl eax, 8
shl r11d, 8
xor r12d, eax
xor ebp, r9d
and r12d, 0xff00ff
rol ebp, 0x10
xor r12d, r11d
mov dword [rsp + 0x20], ebp
rol r12d, 0x10
test ecx, ecx
mov dword [rsp + 0x24], r12d
jne 0x1000f0641
mov esi, dword [rsp + 0x80]
mov r15, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
and esi, 7
lea rcx, [rbx + 0x60]
mov rdx, rdi
mov r8d, esi
mov dword [rbx + 0x68], r8d
call sub.msvcrt.dll_memcpy
mov dword [rbx + 0x78], ebp
mov rbp, qword [rsp + 0x60]
mov dword [rbx + 0x7c], r12d
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x88]
xor eax, eax
add rsp, 0x68
ret