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

Disassembly:
push rdi
push r14
sub rsp, 0x28
mov qword [rsp + 0x40], rbx
mov r14, rcx
mov rbx, qword [rcx + 8]
mov qword [rsp + 0x48], rbp
mov ebp, edx
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x20], r15
xor r15d, r15d
mov edi, r15d
call fcn.180057430
movzx eax, byte [r14 + 0x10]
cmp al, 2
je 0x180056784
cmp al, 1
jne 0x180056539
test ebp, ebp
je 0x18005679b
cmp byte [rbx + 0x20], dil
je 0x18005654d
test ebp, ebp
je 0x180056557
mov edi, 8
jmp 0x18005679b
test ebp, ebp
je 0x180056557
cmp byte [rbx + 0x27], 2
je 0x180056560
cmp byte [rbx + 0x89], dil
je 0x180056569
mov rax, qword [rbx + 0x80]
jmp 0x1800565ae
cmp ebp, 1
jle 0x180056585
mov rax, qword [rbx + 0x78]
test rax, rax
je 0x180056585
cmp qword [rax], r14
jne 0x1800565ab
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x180056577
mov rax, qword [r14 + 8]
cmp byte [r14 + 0x11], dil
je 0x1800565ea
cmp qword [rax + 0x80], r14
je 0x1800565c0
cmp byte [rax + 0x88], dil
je 0x1800565c0
mov edi, 0x106
jmp 0x18005679b
mov rax, qword [rax]
mov rcx, qword [rax]
test rcx, rcx
je 0x180056585
mov edi, 0x106
jmp 0x18005679b
mov rax, qword [rax + 0x78]
test rax, rax
je 0x1800565ea
nop dword [rax]
cmp qword [rax], r14
je 0x1800565e1
cmp dword [rax + 8], 1
jne 0x1800565e1
cmp byte [rax + 0xc], 1
jne 0x1800565b6
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1800565d0
cmp dword [rbx + 0x40], r15d
sete al
mov byte [rbx + 0x23], al
cmp qword [rbx + 0x18], r15
jne 0x18005660a
mov rcx, rbx
call fcn.1800455f0
mov edi, eax
test eax, eax
je 0x1800565f4
jmp 0x180056652
test edi, edi
jne 0x180056652
test ebp, ebp
je 0x18005668c
cmp byte [rbx + 0x20], r15b
je 0x18005661f
mov edi, 8
jmp 0x180056652
mov rax, qword [r14]
mov r8d, r15d
mov rcx, qword [rbx]
mov edx, r15d
cmp byte [rax + 0x29], 2
sete r8b
cmp ebp, 1
setg dl
call fcn.18006bff0
mov edi, eax
test eax, eax
jne 0x180056652
mov rcx, rbx
call fcn.180048b80
mov edi, eax
test eax, eax
je 0x18005668c
cmp byte [rbx + 0x27], r15b
jne 0x18005668c
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x18005668c
mov rcx, qword [rcx + 0x78]
test rcx, rcx
je 0x180056688
mov rsi, qword [rcx + 0x20]
call fcn.18006e7f0
mov rax, qword [rsi + 0xe0]
cmp dword [rax + 0x18], r15d
jne 0x180056688
mov rcx, rsi
call fcn.180049c70
mov qword [rbx + 0x18], r15
cmp dil, 5
jne 0x1800566cd
cmp byte [rbx + 0x27], r15b
jne 0x1800566cd
mov rsi, qword [rbx + 8]
add rsi, 0x2b8
je 0x1800566cd
mov rax, qword [rsi]
test rax, rax
je 0x1800566cd
mov edx, dword [rsi + 0x10]
test edx, edx
js 0x1800566cd
mov rcx, qword [rsi + 8]
call rax
test eax, eax
je 0x1800566c6
inc dword [rsi + 0x10]
jmp 0x1800565f4
mov dword [rsi + 0x10], 0xffffffff
test edi, edi
jne 0x18005679b
cmp byte [r14 + 0x10], r15b
jne 0x1800566f9
inc dword [rbx + 0x3c]
cmp byte [r14 + 0x11], r15b
je 0x1800566f9
mov byte [r14 + 0x3c], 1
mov rax, qword [rbx + 0x78]
mov qword [r14 + 0x40], rax
lea rax, [r14 + 0x30]
mov qword [rbx + 0x78], rax
test ebp, ebp
setne al
inc al
mov byte [r14 + 0x10], al
cmp al, byte [rbx + 0x27]
jbe 0x18005670c
mov byte [rbx + 0x27], al
test ebp, ebp
je 0x18005679b
mov rsi, qword [rbx + 0x18]
cmp ebp, 1
mov qword [rbx + 0x80], r14
setg al
mov byte [rbx + 0x88], al
mov rcx, qword [rsi + 0x70]
movzx eax, byte [rcx + 0x1d]
movzx edx, byte [rcx + 0x1c]
shl edx, 8
or edx, eax
movzx eax, byte [rcx + 0x1e]
shl edx, 8
or edx, eax
movzx eax, byte [rcx + 0x1f]
shl edx, 8
or edx, eax
cmp dword [rbx + 0x40], edx
je 0x180056784
mov rcx, qword [rsi + 0x78]
call fcn.18006d820
mov edi, eax
test eax, eax
jne 0x18005679b
mov edx, dword [rbx + 0x40]
mov eax, edx
mov rcx, qword [rsi + 0x70]
shr eax, 0x18
mov byte [rcx + 0x1c], al
mov eax, edx
shr eax, 0x10
mov byte [rcx + 0x1d], al
mov eax, edx
shr eax, 8
mov byte [rcx + 0x1e], al
mov byte [rcx + 0x1f], dl
test ebp, ebp
je 0x18005679b
mov rax, qword [r14]
mov rcx, qword [rbx]
mov edx, dword [rax + 0x320]
call fcn.18006ce20
mov edi, eax
cmp byte [r14 + 0x11], 0
mov r15, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
je 0x1800567d5
sub dword [r14 + 0x14], 1
jne 0x1800567d5
mov rax, qword [r14 + 8]
mov rcx, qword [rax + 0x58]
test rcx, rcx
je 0x1800567d0
call qword [0x1800fe200]
mov byte [r14 + 0x12], 0
mov eax, edi
add rsp, 0x28
pop r14
pop rdi
ret