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

Disassembly:
mov r11, rsp
push rbx
push rdi
sub rsp, 0x68
mov rax, qword [0x1401eb9a0]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov qword [r11 + 0x10], rbp
mov rbx, rcx
mov rbp, qword [rcx]
mov rcx, qword [rcx + 0x50]
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], r12
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
xor r14d, r14d
mov dword [rsp + 0x3c], 1
mov r12d, r14d
mov rax, qword [rcx]
mov qword [r11 - 0x28], r15
mov r15d, edx
mov dword [rsp + 0x30], edx
lea rdx, [r11 - 0x38]
mov dword [r11 - 0x40], r14d
call qword [rax + 0x30]
mov edi, eax
test eax, eax
jne 0x1400518bd
mov rax, qword [rbx]
mov rsi, qword [rbx + 0x108]
mov rcx, qword [rbx + 0x50]
mov rdx, rsi
mov r8d, dword [rax + 8]
inc r8d
call fcn.14004ffc0
mov edi, eax
test eax, eax
jne 0x1400518bd
cmp byte [rsi], r12b
je 0x14005175e
lea r9, [rsp + 0x3c]
xor r8d, r8d
mov rdx, rsi
mov rcx, rbp
call qword [rbp + gethostname]
mov edi, eax
test eax, eax
jne 0x1400518bd
cmp dword [rsp + 0x3c], r12d
je 0x1400518bd
mov r8, qword [rsp + 0x40]
lea rax, [rsp + 0x38]
lea r9, [rsp + 0x34]
mov qword [rsp + 0x20], rax
mov edx, r15d
mov qword [rbx + 0x60], r14
mov rcx, rbx
mov esi, r15d
call fcn.1400503e0
test eax, eax
jne 0x1400518af
nop word [rax + rax]
mov ebp, dword [rsp + 0x34]
mov r9d, dword [rbx + 0xb8]
mov r10, qword [rsp + 0x40]
cmp ebp, 0xffffffff
jne 0x1400517d3
mov ecx, dword [rbx + 0xbc]
mov rax, r10
sub rax, r9
add ecx, 8
movsxd r8, ecx
cqo
idiv r8
mov rbp, rax
mov dword [rsp + 0x34], eax
test ebp, ebp
jne 0x140051808
test esi, esi
jne 0x140051808
mov rdx, qword [rbx + 0x60]
mov rax, r9
add rax, qword [rbx + 0x68]
cmp rax, rdx
jne 0x140051808
mov eax, dword [rbx + 0xbc]
add eax, 8
movsxd rcx, eax
mov rax, r10
sub rax, rdx
cqo
idiv rcx
mov ebp, eax
mov dword [rsp + 0x34], eax
cmp qword [rbx + 0x60], r9
jne 0x14005182e
mov esi, dword [rsp + 0x38]
mov rcx, rbx
mov edx, esi
call fcn.1400515c0
mov edi, eax
test eax, eax
jne 0x140051922
mov r10, qword [rsp + 0x40]
mov dword [rbx + 0x1c], esi
mov esi, r14d
test ebp, ebp
je 0x140051887
test r15d, r15d
je 0x140051845
mov rcx, rbx
call fcn.140050880
mov r15d, r14d
mov r9d, 1
mov dword [rsp + 0x20], r14d
xor r8d, r8d
lea rdx, [rbx + 0x60]
mov rcx, rbx
call fcn.140050f50
mov edi, eax
test eax, eax
jne 0x140051875
inc r12d
inc esi
cmp esi, ebp
jb 0x140051835
mov r10, qword [rsp + 0x40]
jmp 0x140051887
cmp eax, 0x65
jne 0x140051930
mov r10, qword [rsp + 0x40]
mov qword [rbx + 0x60], r10
mov esi, dword [rsp + 0x30]
lea rax, [rsp + 0x38]
mov edx, esi
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x34]
mov r8, r10
mov rcx, rbx
call fcn.1400503e0
test eax, eax
je 0x1400517a0
mov r15d, dword [rsp + 0x30]
cmp eax, 0x65
mov edi, r14d
cmovne edi, eax
movzx eax, byte [rbx + 0x10]
mov byte [rbx + 0x16], al
test edi, edi
jne 0x140051995
mov rax, qword [rbx]
mov rsi, qword [rbx + 0x108]
mov rcx, qword [rbx + 0x50]
mov rdx, rsi
mov r8d, dword [rax + 8]
inc r8d
call fcn.14004ffc0
mov edi, eax
test eax, eax
jne 0x140051995
movzx eax, byte [rbx + 0x14]
dec al
cmp al, 2
jbe 0x140051963
mov rcx, qword [rbx + 0x48]
mov edi, r14d
mov rax, qword [rcx]
test rax, rax
je 0x140051949
xor r8d, r8d
lea edx, [r8 + 0x15]
call qword [rax + 0x50]
mov edi, eax
cmp eax, 0xc
jne 0x140051945
mov edi, r14d
jmp 0x140051949
movzx eax, byte [rbx + 0x10]
mov r15d, dword [rsp + 0x30]
mov byte [rbx + 0x16], al
jmp 0x140051995
mov r15d, dword [rsp + 0x30]
cmp eax, 0x20a
jne 0x1400518bd
movzx eax, byte [rbx + 0x10]
mov byte [rbx + 0x16], al
jmp 0x1400518cc
test eax, eax
jne 0x14005195f
cmp byte [rbx + 0xb], r14b
jne 0x14005195f
mov rcx, qword [rbx + 0x48]
movzx edx, byte [rbx + 0xf]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov edi, eax
test edi, edi
jne 0x140051995
cmp byte [rsi], r14b
mov rcx, rbx
setne r14b
xor r8d, r8d
mov edx, r14d
call fcn.140050bc0
mov edi, eax
test eax, eax
jne 0x140051995
cmp byte [rsi], al
je 0x140051995
cmp dword [rsp + 0x3c], eax
je 0x140051995
mov rdx, rsi
mov rcx, rbx
call fcn.140051360
mov edi, eax
mov r14, qword [rsp + 0x58]
test r15d, r15d
mov r15, qword [rsp + 0x50]
mov r13, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x88]
je 0x1400519d9
test r12d, r12d
je 0x1400519d9
mov r9, qword [rbx + 0xd8]
lea rdx, str.recovered__d_pages_from__s
mov r8d, r12d
mov ecx, 0x21b
call fcn.140047be0
cmp byte [rbx + 0x10], 0
mov r12, qword [rsp + 0x98]
jne 0x140051a22
mov rcx, qword [rbx + 0x48]
mov rax, qword [rcx]
call qword [rax + 0x60]
mov edx, 0x1000
test edx, eax
jne 0x140051a22
mov rcx, qword [rbx + 0x48]
mov rax, qword [rcx]
mov r8, qword [rax + 0x58]
test r8, r8
je 0x140051a27
call r8
mov edx, eax
cmp eax, 0x20
jl 0x140051a22
cmp eax, 0x10000
jle 0x140051a27
mov edx, 0x10000
jmp 0x140051a27
mov edx, 0x200
mov eax, edi
mov dword [rbx + 0xb8], edx
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14014fd10
add rsp, 0x68
pop rdi
pop rbx
ret