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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x18], r8
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r15, rdx
mov rsi, rcx
mov qword [rsp + 0x28], rcx
test r8, r8
je 0x1400a9c80
test r9d, r9d
jne 0x1400a9ccf
cmp byte [rsp + 0x88], r9b
jne 0x1400a9cb6
mov eax, dword [0x1402e6a7c]
mov edx, dword [rsp + 0x80]
imul eax, eax, 0xd8
sub eax, 0x28
cmp edx, eax
jg 0x1400a9cb6
mov rbp, qword [r8]
lea ebx, [r9 + 1]
xor r9d, r9d
test rbp, rbp
jne 0x1400a99c5
test r15, r15
je 0x1400a9809
mov rax, r15
mov rcx, qword [rax]
test rcx, rcx
je 0x1400a97f2
mov rax, rcx
jmp 0x1400a97e5
mov qword [r8], rax
cmp rax, r9
jne 0x1400a99a4
mov rcx, r15
call fcn.140077120
xor r9d, r9d
mov r14, qword [0x1402e6b48]
mov ebp, 0x800
mov r15, r9
mov r13, r9
mov r12d, r9d
nop
mov rcx, r14
call fcn.1401e3610
cmp ebp, 0xb0
mov rdi, rax
jle 0x1400a98cb
xor ecx, ecx
test rax, rax
je 0x1400a9878
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov dword [rax + 0x18], ecx
mov dword [rax + 0x1c], 2
mov word [rax + 0x20], bx
add rax, 0x50
mov qword [rdi + 0x28], rcx
mov dword [rdi + 0x38], ecx
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x10], rax
mov dword [rdi + 0x3c], ecx
mov dword [rdi + 0x40], ecx
mov word [rdi + 0x44], cx
mov word [rdi + 0x46], cx
mov qword [rdi + 0x48], rcx
mov qword [rdi + 0x50], rcx
mov rcx, qword [0x1402e6b50]
call fcn.1401e3610
mov rcx, qword [0x1402e6b58]
mov rbx, rax
call fcn.1401e3610
mov ecx, 1
mov dword [rax], ecx
or dword [rdi + 0x1c], ecx
xor r9d, r9d
mov qword [rdi + 0x50], rbx
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x70], rax
mov qword [rdi + 0x58], r9
mov qword [rdi + 0x60], r9
mov dword [rdi + 0x68], 0x800
mov ebx, ecx
mov dword [rdi + 0x78], ecx
mov eax, 0x800
jmp 0x1400a994a
xor r9d, r9d
test r12b, 2
je 0x1400a9920
test rax, rax
je 0x1400a9919
mov qword [rax], r9
mov qword [rax + 8], r9
mov dword [rax + 0x18], r9d
mov dword [rax + 0x1c], 2
mov word [rax + 0x20], bx
add rax, 0x50
mov qword [rdi + 0x28], r9
mov dword [rdi + 0x38], r9d
mov qword [rdi + 0x30], r9
mov qword [rdi + 0x10], rax
mov dword [rdi + 0x3c], r9d
mov dword [rdi + 0x40], r9d
mov word [rdi + 0x44], r9w
mov word [rdi + 0x46], r9w
mov qword [rdi + 0x48], r9
mov eax, 0xb0
jmp 0x1400a9945
test rax, rax
je 0x1400a9940
mov qword [rax], r9
mov qword [rax + 8], r9
mov dword [rax + 0x18], r9d
mov dword [rax + 0x1c], r9d
mov word [rax + 0x20], bx
add rax, 0x28
mov qword [rdi + 0x10], rax
mov eax, 0xd8
cmp ebp, eax
cmovl eax, ebp
test rdi, rdi
je 0x1400a9c80
cmp eax, 0x800
jl 0x1400a99bd
sub ebp, eax
test r13, r13
je 0x1400a9967
mov qword [r13], rdi
jmp 0x1400a996a
mov r15, rdi
and r12d, 0xfffffffd
mov r13, rdi
test ebp, ebp
jg 0x1400a9820
test r12b, 4
je 0x1400a9983
or dword [rdi + 0x1c], 4
test r15, r15
je 0x1400a9c8d
mov r8, qword [rsp + 0x70]
add qword [r15 + 0x10], 0x48
mov edx, dword [rsp + 0x80]
mov qword [r8], r15
mov dword [r15 + 0x18], r9d
mov rbp, qword [r8]
mov eax, dword [rbp + 0x1c]
test al, 1
je 0x1400a99f1
test al, 8
jne 0x1400a99ec
mov rax, qword [rbp + 0x70]
mov ecx, dword [rax]
cmp ecx, 1
jmp 0x1400a99d8
mov rcx, rdi
jmp 0x1400a9c88
mov eax, dword [rbp + 0x1c]
test bl, al
je 0x1400a99f1
test al, 8
jne 0x1400a99ec
mov rax, qword [rbp + 0x70]
mov ecx, dword [rax]
cmp ecx, ebx
jne 0x1400a99ec
mov r12d, dword [rbp + 0x68]
sub r12d, dword [rbp + 0x18]
sub r12d, dword [rbp + 0x10]
add r12d, dword [rbp + 0x50]
jmp 0x1400a9a03
mov r12d, r9d
jmp 0x1400a9a03
mov r12d, ebp
sub r12d, dword [rbp + 0x18]
sub r12d, dword [rbp + 0x10]
add r12d, 0x100
movsxd r13, dword [rbp + 0x18]
add r13, qword [rbp + 0x10]
cmp r12d, edx
jl 0x1400a9a5d
mov r12d, edx
test edx, edx
jle 0x1400a9a52
nop word [rax + rax]
mov eax, dword [rsi + 0x18]
mov rdx, qword [rsi + 0x10]
mov edi, r12d
cmp eax, r12d
mov rcx, r13
cmovl edi, eax
mov r8d, edi
mov ebx, edi
call fcn.1401e3ed0
mov rsi, qword [rsi]
sub r12d, edi
add r13, rbx
test r12d, r12d
jg 0x1400a9a20
mov edx, dword [rsp + 0x80]
add dword [rbp + 0x18], edx
mov rax, r15
jmp 0x1400a9c8f
test r12d, r12d
jle 0x1400a9aac
mov r14d, r12d
nop word [rax + rax]
mov eax, dword [rsi + 0x18]
mov rdx, qword [rsi + 0x10]
mov edi, r14d
cmp eax, r14d
mov rcx, r13
cmovl edi, eax
mov r8d, edi
mov ebx, edi
call fcn.1401e3ed0
mov rsi, qword [rsi]
sub r14d, edi
add r13, rbx
test r14d, r14d
jg 0x1400a9a70
add dword [rbp + 0x18], r12d
mov rsi, qword [rsp + 0x28]
sub dword [rsp + 0x80], r12d
xor edx, edx
mov ebp, 0x800
mov r13, rdx
mov rbx, rdx
mov qword [rsp + 0x20], rdx
mov r14d, edx
mov rcx, qword [0x1402e6b48]
call fcn.1401e3610
cmp ebp, 0xb0
mov rdi, rax
jle 0x1400a9b7a
xor edx, edx
test rax, rax
je 0x1400a9b22
mov ecx, 1
mov qword [rax], rdx
mov qword [rax + 8], rdx
mov dword [rax + 0x18], edx
mov dword [rax + 0x1c], 2
mov word [rax + 0x20], cx
add rax, 0x50
mov qword [rdi + 0x28], rdx
mov dword [rdi + 0x38], edx
mov qword [rdi + 0x30], rdx
mov dword [rdi + 0x3c], edx
mov dword [rdi + 0x40], edx
mov qword [rdi + 0x10], rax
mov word [rdi + 0x44], dx
mov word [rdi + 0x46], dx
mov qword [rdi + 0x48], rdx
mov rcx, qword [0x1402e6b50]
mov qword [rdi + 0x50], rdx
call fcn.1401e3610
mov rcx, qword [0x1402e6b58]
mov rbx, rax
call fcn.1401e3610
mov ecx, 1
mov dword [rax], ecx
or dword [rdi + 0x1c], ecx
xor edx, edx
mov qword [rdi + 0x50], rbx
mov qword [rdi + 0x10], rbx
mov rbx, qword [rsp + 0x20]
mov qword [rdi + 0x70], rax
mov qword [rdi + 0x58], rdx
mov qword [rdi + 0x60], rdx
mov dword [rdi + 0x68], 0x800
mov dword [rdi + 0x78], ecx
mov eax, 0x800
jmp 0x1400a9bfc
test r14b, 2
je 0x1400a9bcd
test rax, rax
je 0x1400a9bc6
xor edx, edx
mov dword [rax + 0x1c], 2
mov qword [rax], rdx
mov qword [rax + 8], rdx
mov dword [rax + 0x18], edx
mov eax, 1
mov qword [rdi + 0x28], rdx
mov dword [rdi + 0x38], edx
mov word [rdi + 0x20], ax
lea rax, [rdi + 0x50]
mov qword [rdi + 0x30], rdx
mov dword [rdi + 0x3c], edx
mov dword [rdi + 0x40], edx
mov word [rdi + 0x44], dx
mov qword [rdi + 0x10], rax
mov word [rdi + 0x46], dx
mov qword [rdi + 0x48], rdx
mov eax, 0xb0
jmp 0x1400a9bf7
test rax, rax
je 0x1400a9bf2
xor edx, edx
mov qword [rax], rdx
mov qword [rax + 8], rdx
mov dword [rax + 0x18], edx
mov dword [rax + 0x1c], edx
mov eax, 1
mov word [rdi + 0x20], ax
lea rax, [rdi + 0x28]
mov qword [rdi + 0x10], rax
mov eax, 0xd8
cmp ebp, eax
cmovl eax, ebp
test rdi, rdi
je 0x1400a9cac
cmp eax, 0x800
jl 0x1400a9c78
sub ebp, eax
test rbx, rbx
je 0x1400a9c18
mov qword [rbx], rdi
jmp 0x1400a9c1b
mov r13, rdi
mov rbx, rdi
and r14d, 0xfffffffd
mov qword [rsp + 0x20], rbx
test ebp, ebp
jg 0x1400a9ac1
test r14b, 4
je 0x1400a9c40
or dword [rdi + 0x1c], 4
nop dword [rax]
test r13, r13
je 0x1400a9c80
mov rbx, qword [rsp + 0x70]
mov edi, dword [rsp + 0x80]
mov edx, r12d
mov rax, qword [rbx]
mov r8d, edi
mov rcx, rsi
mov qword [rax], r13
mov r9, qword [r13 + 0x10]
mov qword [rbx], r13
call fcn.140077ad0
mov r11, qword [rbx]
mov rax, r15
add dword [r11 + 0x18], edi
jmp 0x1400a9c8f
mov rcx, rdi
call fcn.140077120
test r15, r15
je 0x1400a9c8d
mov rcx, r15
call fcn.140077120
xor eax, eax
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
test r13, r13
je 0x1400a9c80
mov rcx, r13
jmp 0x1400a9c7b
xor edx, edx
mov r8d, 0x3b9aca00
lea r9d, [rdx + 1]
call fcn.140077430
mov r8, qword [rsp + 0x70]
mov rsi, rax
test rsi, rsi
je 0x1400a9c80
test r15, r15
je 0x1400a9d09
mov rax, qword [r8]
test rax, rax
jne 0x1400a9cf1
mov rax, r15
mov rcx, qword [rax]
test rcx, rcx
je 0x1400a9cf1
mov rax, rcx
jmp 0x1400a9ce4
mov qword [rax], rsi
mov rax, qword [rsi]
test rax, rax
je 0x1400a9d01
mov rsi, rax
jmp 0x1400a9cf4
mov qword [r8], rsi
mov rax, r15
jmp 0x1400a9c8f
mov rax, rsi
nop dword [rax]
mov rcx, qword [rax]
test rcx, rcx
je 0x1400a9d1d
mov rax, rcx
jmp 0x1400a9d10
mov qword [r8], rax
mov rax, rsi
jmp 0x1400a9c8f