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

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, 0x20
mov ebx, dword [r9]
mov rdi, qword [r8]
mov r12, r9
mov r13, r8
mov r14b, dl
mov rsi, rcx
cmp ebx, 0xb8
jae 0x78be68ac
mov eax, 0xc0000004
jmp 0x78be6c44
xor r15d, r15d
add ebx, 0xffffff48
mov edx, 0xffffffff
cmp rdi, r15
je 0x78be6a70
mov rax, qword [rcx + 0xf8]
mov qword [rdi + 0xb0], rax
mov rax, qword [rcx + 0xf0]
mov qword [rdi + 0xa8], rax
mov rax, qword [rcx + 0xe8]
mov qword [rdi + 0xa0], rax
mov rax, qword [rcx + 0xe0]
mov qword [rdi + 0x98], rax
mov rax, qword [rcx + 0xd8]
mov qword [rdi + 0x90], rax
mov rax, qword [rcx + 0xd0]
mov qword [rdi + 0x88], rax
mov rax, qword [rcx + 0xc8]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x84], ecx
mov rax, qword [rsi + 0xc0]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x80], ecx
mov rax, qword [rsi + 0xb8]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x7c], ecx
mov rax, qword [rsi + 0xb0]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x78], ecx
mov rax, qword [rsi + 0xa8]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x74], ecx
mov rax, qword [rsi + 0xa0]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x70], ecx
mov rax, qword [rsi + 0x98]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x6c], ecx
mov rax, qword [rsi + 0x90]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x68], ecx
mov rax, qword [rsi + 0x88]
mov rcx, rdx
cmp rax, rdx
cmovb rcx, rax
mov dword [rdi + 0x64], ecx
mov eax, dword [rsi + 0x80]
mov dword [rdi + 0x60], eax
cmp qword [rsi + 0x78], rdx
mov rax, rdx
cmovb rax, qword [rsi + 0x78]
mov dword [rdi + 0x5c], eax
cmp qword [rsi + 0x70], rdx
mov rax, rdx
cmovb rax, qword [rsi + 0x70]
mov dword [rdi + 0x58], eax
mov eax, dword [rsi + 0x68]
mov dword [rdi + 0x54], eax
mov eax, dword [rsi + 0x64]
mov dword [rdi + 0x50], eax
mov eax, dword [rsi + 0x60]
mov dword [rdi + 0x4c], eax
mov eax, dword [rsi + 0x58]
mov dword [rdi + 0x48], eax
mov eax, dword [rsi + 0x50]
mov dword [rdi + 0x44], eax
mov eax, dword [rsi + 0x48]
mov dword [rdi + 0x40], eax
movzx eax, word [rsi + 0x38]
mov word [rdi + 0x38], ax
movzx eax, word [rsi + 0x3a]
mov word [rdi + 0x3a], ax
mov eax, dword [rsi + 0x40]
mov dword [rdi + 0x3c], eax
mov rax, qword [rsi + 0x30]
mov qword [rdi + 0x30], rax
mov rax, qword [rsi + 0x28]
mov qword [rdi + 0x28], rax
mov rax, qword [rsi + 0x20]
mov qword [rdi + 0x20], rax
mov rax, qword [rsi + 0x18]
mov qword [rdi + 0x18], rax
mov eax, dword [rsi + 0x14]
mov dword [rdi + 0x14], eax
mov eax, dword [rsi + 0x10]
mov dword [rdi + 0x10], eax
mov rax, qword [rsi + 8]
mov qword [rdi + 8], rax
mov eax, dword [rsi + 4]
mov dword [rdi + 4], eax
mov eax, dword [rsi]
mov dword [rdi], eax
mov r11d, dword [rsi + 4]
lea r9, [rdi + 0xb8]
lea r10, [rsi + 0x100]
mov rcx, r11
mov eax, ebx
mov r8, r10
shl rcx, 3
mov rdx, r9
mov rbp, r9
cmp rax, rcx
jb 0x78be68a2
mov eax, r11d
imul eax, eax, 0xfffffff8
add ebx, eax
cmp r11d, r15d
jbe 0x78be6bd5
mov ecx, 0xffffffff
cmp r14b, r15b
je 0x78be6b5e
cmp rdx, r15
je 0x78be6b4e
mov eax, dword [r8 + 0x80]
mov dword [rdx + 0x58], eax
mov eax, dword [r8 + 0x78]
mov dword [rdx + 0x54], eax
mov eax, dword [r8 + 0x70]
mov dword [rdx + 0x50], eax
mov eax, dword [r8 + 0x68]
mov dword [rdx + 0x4c], eax
mov eax, dword [r8 + 0x60]
mov dword [rdx + 0x48], eax
mov eax, dword [r8 + 0x58]
mov dword [rdx + 0x44], eax
mov eax, dword [r8 + 0x50]
mov dword [rdx + 0x40], eax
mov eax, dword [r8 + 0x48]
mov dword [rdx + 0x38], eax
mov eax, dword [r8 + 0x44]
mov dword [rdx + 0x34], eax
mov eax, dword [r8 + 0x40]
mov dword [rdx + 0x30], eax
mov eax, dword [r8 + 0x3c]
mov dword [rdx + 0x2c], eax
mov eax, dword [r8 + 0x38]
mov dword [rdx + 0x28], eax
mov eax, dword [r8 + 0x30]
mov dword [rdx + 0x24], eax
mov eax, dword [r8 + 0x28]
mov dword [rdx + 0x20], eax
mov eax, dword [r8 + 0x20]
mov dword [rdx + 0x1c], eax
mov eax, dword [r8 + 0x18]
mov dword [rdx + 0x18], eax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 0x10], rax
mov rax, qword [r8 + 8]
mov qword [rdx + 8], rax
mov rax, qword [r8]
mov qword [rdx], rax
add r8, 0x88
add rdx, 0x60
mov rbp, rdx
jmp 0x78be6bcc
cmp r9, r15
je 0x78be6bc1
mov eax, dword [r10 + 0x48]
mov dword [r9 + 0x38], eax
mov eax, dword [r10 + 0x44]
mov dword [r9 + 0x34], eax
mov eax, dword [r10 + 0x40]
mov dword [r9 + 0x30], eax
mov eax, dword [r10 + 0x3c]
mov dword [r9 + 0x2c], eax
mov eax, dword [r10 + 0x38]
mov dword [r9 + 0x28], eax
mov eax, dword [r10 + 0x30]
mov dword [r9 + 0x24], eax
mov eax, dword [r10 + 0x28]
mov dword [r9 + 0x20], eax
mov eax, dword [r10 + 0x20]
mov dword [r9 + 0x1c], eax
mov eax, dword [r10 + 0x18]
mov dword [r9 + 0x18], eax
mov rax, qword [r10 + 0x10]
mov qword [r9 + 0x10], rax
mov rax, qword [r10 + 8]
mov qword [r9 + 8], rax
mov rax, qword [r10]
mov qword [r9], rax
add r10, 0x50
add r9, 0x40
mov rbp, r9
add r11d, ecx
jne 0x78be6ab3
mov rdx, qword [rsi + 0x40]
cmp rdx, r15
je 0x78be6c12
movzx eax, word [rsi + 0x3a]
cmp ebx, eax
jb 0x78be68a2
movzx r8d, word [rsi + 0x3a]
mov rcx, rbp
sub ebx, r8d
call fcn.78bfe074
mov dword [rdi + 0x3c], ebp
movzx eax, word [rsi + 0x3a]
add rbp, rax
mov word [rdi + 0x3a], ax
movzx eax, word [rsi + 0x38]
mov word [rdi + 0x38], ax
jmp 0x78be6c20
mov dword [rdi + 0x3c], r15d
mov word [rdi + 0x38], r15w
mov word [rdi + 0x3a], r15w
mov ecx, ebp
add rcx, 7
and rcx, 0xfffffffffffffff8
cmp dword [rsi], r15d
jne 0x78be6c34
mov dword [rdi], r15d
jmp 0x78be6c3a
mov eax, ecx
sub eax, edi
mov dword [rdi], eax
mov qword [r13], rcx
xor eax, eax
mov dword [r12], ebx
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret