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

Disassembly:
push rbx
sub rsp, 0x20
cmp byte [rdx], 0x31
mov rbx, rcx
jne 0x1800a1f0a
test rcx, rcx
jne 0x1800a1d20
lea eax, [rcx - 2]
add rsp, 0x20
pop rbx
ret
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x30], rsi
xor esi, esi
mov qword [rsp + 0x38], rdi
mov qword [rcx + 0x20], rsi
test rax, rax
jne 0x1800a1d4c
lea rax, [0x1800a4770]
mov qword [rcx + 0x40], rsi
mov qword [rcx + 0x30], rax
mov ecx, esi
jmp 0x1800a1d50
mov rcx, qword [rcx + 0x40]
cmp qword [rbx + 0x38], rsi
jne 0x1800a1d61
lea rdx, [0x1800a4780]
mov qword [rbx + 0x38], rdx
mov edx, 1
mov r8d, 0x1720
call rax
mov rdi, rax
test rax, rax
je 0x1800a1ef5
mov qword [rbx + 0x28], rax
mov edx, 0x8000
mov qword [rax], rbx
mov r8d, 2
mov dword [rax + 8], 0x2a
mov dword [rax + 0x2c], 2
mov qword [rax + 0x30], rsi
mov dword [rax + 0x48], 0xf
mov dword [rax + 0x44], 0x8000
mov dword [rax + 0x4c], 0x7fff
mov dword [rax + 0x78], 0xb
mov dword [rax + 0x74], 0x800
mov dword [rax + 0x7c], 0x7ff
mov dword [rax + 0x80], 4
mov rcx, qword [rbx + 0x40]
call qword [rbx + 0x30]
mov edx, dword [rdi + 0x44]
mov r8d, 2
mov qword [rdi + 0x50], rax
mov rcx, qword [rbx + 0x40]
call qword [rbx + 0x30]
mov edx, dword [rdi + 0x74]
mov r8d, 2
mov qword [rdi + 0x60], rax
mov rcx, qword [rbx + 0x40]
call qword [rbx + 0x30]
mov dword [rdi + 0x1718], esi
mov edx, 0x400
mov qword [rdi + 0x68], rax
mov r8d, 4
mov dword [rdi + 0x16f0], 0x400
mov rcx, qword [rbx + 0x40]
call qword [rbx + 0x30]
mov rdx, rax
mov qword [rdi + 0x10], rax
mov eax, dword [rdi + 0x16f0]
lea ecx, [rax*4]
mov dword [rdi + 0x18], ecx
cmp qword [rdi + 0x50], rsi
je 0x1800a1e99
cmp qword [rdi + 0x60], rsi
je 0x1800a1e99
cmp qword [rdi + 0x68], rsi
je 0x1800a1e99
test rdx, rdx
je 0x1800a1e99
mov ecx, eax
mov qword [rdi + 0xac], 6
shr rax, 1
mov byte [rdi + 0x3c], 8
lea rax, [rdx + rax*2]
mov qword [rdi + 0x16f8], rax
lea rax, [rdx + rcx*2]
add rcx, rax
mov qword [rdi + 0x16e8], rcx
mov rcx, rbx
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
add rsp, 0x20
pop rbx
jmp 0x1800a1f20
mov rax, qword [str.insufficient_memory]
mov dword [rdi + 8], 0x29a
mov qword [rbx + 0x20], rax
cmp qword [rbx + 0x30], rsi
je 0x1800a1ef5
cmp qword [rbx + 0x38], rsi
je 0x1800a1ef5
mov rax, qword [rbx + 0x28]
test rax, rax
je 0x1800a1ef5
cmp qword [rax], rbx
jne 0x1800a1ef5
mov ecx, dword [rax + 8]
lea eax, [rcx - 0x2a]
cmp eax, 0x3d
ja 0x1800a1ee0
movabs rdx, 0x2002000088008001
bt rdx, rax
jb 0x1800a1eed
cmp ecx, 0x71
je 0x1800a1eed
cmp ecx, 0x29a
jne 0x1800a1ef5
mov rcx, rbx
call fcn.1800a2c20
mov rsi, qword [rsp + 0x30]
mov eax, 0xfffffffc
mov rdi, qword [rsp + 0x38]
add rsp, 0x20
pop rbx
ret
mov eax, 0xfffffffa
add rsp, 0x20
pop rbx
ret
push rbx
sub rsp, 0x20
mov rbx, rcx
test rcx, rcx
je 0x1800a20f6
cmp qword [rcx + 0x30], 0
je 0x1800a20f6
cmp qword [rcx + 0x38], 0
je 0x1800a20f6
mov rcx, qword [rcx + 0x28]
test rcx, rcx
je 0x1800a20f6
cmp qword [rcx], rbx
jne 0x1800a20f6
mov edx, dword [rcx + 8]
lea eax, [rdx - 0x2a]
cmp eax, 0x3d
ja 0x1800a1f79
movabs r8, 0x2002000088008001
bt r8, rax
jb 0x1800a1f8a
cmp edx, 0x71
je 0x1800a1f8a
cmp edx, 0x29a
jne 0x1800a20f6
mov dword [rbx + 0x48], 2
mov qword [rsp + 0x30], rdi
xor edi, edi
mov dword [rbx + 0x1c], edi
mov dword [rbx + 0xc], edi
mov qword [rbx + 0x20], rdi
mov rax, qword [rcx + 0x10]
mov edx, dword [rcx + 0x2c]
mov qword [rcx + 0x20], rax
mov dword [rcx + 0x28], edi
test edx, edx
jns 0x1800a1fb9
neg edx
mov dword [rcx + 0x2c], edx
cmp edx, 2
jne 0x1800a1fc3
lea eax, [rdx + 0x37]
jmp 0x1800a1fd4
test edx, edx
mov eax, 0x71
mov r8d, 0x2a
cmovne eax, r8d
mov dword [rcx + 8], eax
cmp edx, 2
mov eax, edi
setne al
mov dword [rbx + 0x4c], eax
lea rax, [rcx + 0xbc]
mov qword [rcx + 0xb40], rax
lea rax, [0x1800f9b48]
mov qword [rcx + 0xb50], rax
lea rax, [rcx + 0x9b0]
mov qword [rcx + 0xb58], rax
lea rax, [0x1800f9d38]
mov qword [rcx + 0xb68], rax
lea rax, [rcx + 0xaa4]
mov qword [rcx + 0xb70], rax
lea rax, [0x1800fa280]
mov qword [rcx + 0xb80], rax
mov dword [rcx + 0x40], edi
mov word [rcx + 0x1710], di
mov dword [rcx + 0x1714], edi
call fcn.1800a5740
mov rbx, qword [rbx + 0x28]
xor edx, edx
mov eax, dword [rbx + 0x44]
mov ecx, dword [rbx + 0x74]
add eax, eax
mov dword [rbx + 0x58], eax
dec ecx
mov rax, qword [rbx + 0x68]
mov word [rax + rcx*2], di
mov r8d, dword [rbx + 0x74]
mov rcx, qword [rbx + 0x68]
dec r8d
add r8, r8
call fcn.1800ab190
movsxd rdx, dword [rbx + 0xac]
lea r8, [0x1800f75e0]
add rdx, rdx
movzx eax, word [r8 + rdx*8 + 2]
mov dword [rbx + 0xa8], eax
movzx eax, word [r8 + rdx*8]
mov dword [rbx + 0xb4], eax
mov eax, edi
movzx ecx, word [r8 + rdx*8 + 4]
mov dword [rbx + 0xb8], ecx
movzx ecx, word [r8 + rdx*8 + 6]
mov qword [rbx + 0x90], rdi
mov dword [rbx + 0x84], edi
mov dword [rbx + 0x9c], edi
mov dword [rbx + 0x170c], edi
mov dword [rbx + 0x70], edi
mov rdi, qword [rsp + 0x30]
mov dword [rbx + 0xa4], ecx
mov dword [rbx + 0xa0], 2
mov dword [rbx + 0x88], 2
add rsp, 0x20
pop rbx
ret
mov eax, 0xfffffffe
add rsp, 0x20
pop rbx
ret