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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov rbp, qword [rdx]
mov rsi, qword [rcx + 0x10]
xor edi, edi
movzx eax, byte [rbp]
movsxd r10, r9d
mov r12, r8
mov rbx, rdx
mov qword [rsp + 0x60], rdx
mov r15, rcx
mov qword [rsp + 0x48], rbp
mov r9d, 0x400
mov r8d, 0x800
cmp al, 0x35
je 0x1800a47eb
cmp al, 0x2d
je 0x1800a47eb
cmp al, 0x32
jne 0x1800a40a5
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [rsp + 0xe8]
cmp dword [rsi + 0x94], ecx
jg 0x1800a4077
mov r9d, edx
lea edx, [rdi + 0x4b]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.180035350
mov edx, dword [rsp + 0xe8]
mov r9d, 0x400
mov r8d, 0x800
mov rcx, qword [r12 + 0x60]
test dword [rcx + 0x38], 0x200000
je 0x1800a4021
test word [rbx + 0x14], r8w
jne 0x1800a4830
test byte [rbx + 0x12], 4
jne 0x1800a4830
mov r8d, 0x200
cmp dword [r12], 0
je 0x1800a4045
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x1800a4830
mov rax, qword [rbx + 0x30]
test qword [r12 + 0x68], rax
jne 0x1800a4830
test edi, edi
je 0x1800a4803
movzx eax, word [rbx + 0x12]
test r9w, ax
je 0x1800a4803
or ax, r8w
mov word [rbx + 0x12], ax
jmp 0x1800a4808
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov qword [rax + rcx*8], 0x4b
jmp 0x1800a4008
mov r13, qword [r12 + 0x60]
mov dword [rsp + 0x30], 5
mov r14d, edi
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], rdi
test dword [r13 + 0x38], r9d
jne 0x1800a40e6
mov rax, qword [r13 + 0x20]
test rax, rax
je 0x1800a40e6
mov rax, qword [rax + 0x38]
cmp byte [r10 + rax], dil
je 0x1800a40e6
mov eax, edi
cmp dword [rsp + 0xe0], eax
sete al
jmp 0x1800a40ed
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x34], eax
mov rdx, rdi
test r10d, r10d
jle 0x1800a411d
mov rcx, qword [r13 + 0x48]
nop dword [rax]
cmp qword [rcx], rdi
je 0x1800a4111
mov rax, qword [rcx]
cmp qword [rax], rbp
je 0x1800a41a1
inc rdx
add rcx, 8
cmp rdx, r10
jl 0x1800a4100
movzx eax, word [r13 + 0x3c]
cmp r10d, eax
jge 0x1800a414b
mov rax, qword [r13 + 0x48]
movzx edx, word [r13 + 0x3c]
lea rcx, [rax + r10*8]
sub edx, r10d
mov rax, qword [rcx]
cmp qword [rax], rbp
jne 0x1800a4142
inc r14d
add rcx, 8
dec rdx
jne 0x1800a4137
test dword [rbp + 4], 0x1000
mov dword [rsp + 0xc8], edi
je 0x1800a430a
mov rax, qword [rbp + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
je 0x1800a430a
cmp dword [rbp + 0x2c], edi
je 0x1800a422a
test dword [rbp + 4], 0x2000000
je 0x1800a422a
mov rcx, qword [rbp + 0x10]
movzx eax, byte [rcx]
cmp al, 0xb0
jne 0x1800a4195
movzx eax, byte [rcx + 2]
cmp al, 0xb1
jne 0x1800a41b8
mov rax, qword [rcx + 0x20]
mov ecx, dword [rax]
jmp 0x1800a41cd
mov rdx, rbx
mov rcx, r12
call fcn.1800a3a10
mov eax, dword [rsp + 0xe8]
jmp 0x1800a4832
cmp al, 0x8a
jne 0x1800a41c8
mov rax, qword [rcx + 0x20]
mov rcx, qword [rax + 0x20]
mov ecx, dword [rcx]
jmp 0x1800a41cd
mov ecx, 1
cmp r14d, ecx
cmovg ecx, r14d
movsxd rdx, ecx
mov rcx, qword [r15]
shl rdx, 2
call fcn.18000c400
mov rcx, qword [rsp + 0xc0]
xor r9d, r9d
mov r15, rax
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x28], rax
lea r8d, [r9 + 4]
mov rdx, rbp
mov qword [rsp + 0x20], r15
call fcn.180053e50
mov r15d, dword [rsp + 0xc8]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x48], rbp
jmp 0x1800a433a
mov r8, qword [rsp + 0x40]
mov r13, qword [r15]
mov r9, rbp
mov edx, r10d
mov rcx, r15
call fcn.1800a3c20
mov r12, rax
cmp byte [r13 + 0x67], dil
jne 0x1800a42d5
mov rcx, qword [r15]
movsxd rbp, r14d
shl rbp, 2
test rcx, rcx
je 0x1800a4269
mov rdx, rbp
call fcn.18000c4a0
mov r15, rax
jmp 0x1800a427e
test rbp, rbp
je 0x1800a427b
mov rcx, rbp
call fcn.18000be40
mov r15, rax
jmp 0x1800a427e
mov r15, rdi
mov qword [rsp + 0x38], r15
test r15, r15
je 0x1800a4295
mov r8, rbp
xor edx, edx
mov rcx, r15
call fcn.18012e4c0
mov rcx, qword [rsp + 0xc0]
xor r9d, r9d
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x28], rax
lea r8d, [r9 + 4]
mov rdx, r12
mov qword [rsp + 0x20], r15
call fcn.180053e50
mov rbp, qword [rsp + 0x48]
mov r15d, dword [rsp + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rbp + 0x2c], r15d
jmp 0x1800a42e2
mov r15d, dword [rsp + 0xc8]
mov eax, 5
test r12, r12
je 0x1800a42f6
mov rdx, r12
mov rcx, r13
call fcn.180051ec0
mov eax, dword [rsp + 0x30]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0xd0]
mov qword [rsp + 0x48], rbp
jmp 0x1800a433a
xor r9d, r9d
lea rax, [rsp + 0xc8]
mov rdx, rbp
mov qword [rsp + 0x28], rax
lea r8d, [r9 + 4]
mov rcx, r15
mov qword [rsp + 0x20], rdi
call fcn.180053e50
mov r15d, dword [rsp + 0xc8]
mov dword [rsp + 0x30], eax
cmp eax, 4
jne 0x1800a434e
mov eax, edi
cmp dword [rsp + 0x34], eax
sete al
mov dword [rsp + 0x34], eax
jmp 0x1800a4352
mov eax, dword [rsp + 0x34]
mov ecx, 0x20
test eax, eax
mov edx, 0x24
cmovne edx, ecx
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1800a4384
xor r9d, r9d
mov r8d, r15d
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.180035350
jmp 0x1800a43b4
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], di
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [rax + rcx*8 + 1], dil
or dword [r13 + 0x38], 0x800
cmp dword [r12 + 0x50], edi
jne 0x1800a43d6
mov rax, qword [rsp + 0xc0]
dec dword [rax + 0x44]
mov eax, dword [rax + 0x44]
mov dword [r12 + 0x10], eax
cmp dword [rsp + 0xd8], edi
jle 0x1800a43f1
mov eax, dword [r13 + 0x38]
bt eax, 0x14
jb 0x1800a43f1
bts eax, 0x12
mov dword [r13 + 0x38], eax
movsxd r15, dword [r12 + 0x50]
lea eax, [r15 + r14]
mov dword [r12 + 0x50], eax
mov r12, qword [r12 + 0x58]
cdqe
lea r14, [rax + rax*4]
mov rax, qword [rbx + 8]
mov r13, qword [rax]
shl r14, 2
mov rcx, qword [r13]
lea rdx, [r14 + 0x10]
mov rcx, qword [rcx]
call fcn.18000c4a0
mov rbp, rax
test rax, rax
je 0x1800a4458
mov rax, qword [r13 + 0x60]
mov qword [rbp + 8], r14
mov qword [rbp], rax
mov qword [r13 + 0x60], rbp
add rbp, 0x10
je 0x1800a4458
test r12, r12
je 0x1800a4458
mov r8, qword [r12 - 8]
mov rdx, r12
mov rcx, rbp
call fcn.180128750
mov r12, qword [rsp + 0xd0]
mov qword [r12 + 0x58], rbp
test rbp, rbp
je 0x1800a4705
movsxd rax, dword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
movsxd r10, dword [rsp + 0xd8]
mov r11, rax
mov qword [rsp + 0x58], rax
movzx eax, word [r8 + 0x3c]
lea rcx, [r15 + r15*4]
cmp r10d, eax
jge 0x1800a469a
mov rdx, qword [rsp + 0x38]
mov r13, qword [rsp + 0x48]
mov ebx, dword [rsp + 0xc8]
lea rbp, [rbp + rcx*4 + 4]
mov ecx, dword [rsp + 0xe8]
mov eax, r10d
mov r14d, ecx
lea r15, [r10*8]
mov r9, rdx
sub r14d, r10d
sub eax, ecx
mov qword [rsp + 0x50], rdx
mov dword [rsp + 0x30], eax
mov r12d, ecx
nop dword [rax]
mov rax, qword [r8 + 0x48]
mov rcx, qword [r15 + rax]
cmp qword [rcx], r13
jne 0x1800a466f
cmp r11, 1
jne 0x1800a4552
movsxd rdx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], edx
jg 0x1800a452c
mov r9d, r12d
mov r8d, ebx
mov edx, 0x87
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.180035350
mov r10d, dword [rsp + 0xd8]
mov edx, eax
jmp 0x1800a45c9
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], edi
mov dword [rax + rcx*8], 0x87
jmp 0x1800a45c0
test rdx, rdx
je 0x1800a4565
mov r8d, dword [r9]
add r9, 4
mov qword [rsp + 0x50], r9
jmp 0x1800a4568
mov r8d, edi
movsxd rdx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], edx
jg 0x1800a459b
mov r9d, r8d
mov edx, 0x5e
mov rcx, rsi
mov r8d, ebx
mov dword [rsp + 0x20], r12d
call fcn.180035350
mov r10d, dword [rsp + 0xd8]
mov edx, eax
jmp 0x1800a45c9
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r12d
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], ebx
mov qword [rax + rcx*8 + 0x10], rdi
mov dword [rbp], edx
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1800a45fb
xor r9d, r9d
mov r8d, r12d
mov rcx, rsi
lea edx, [r9 + 0x32]
mov dword [rsp + 0x20], edi
call fcn.180035350
mov r10d, dword [rsp + 0xd8]
jmp 0x1800a4625
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 4], r12d
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov dword [rax + rcx*8], 0x32
mov ecx, dword [rsp + 0x30]
add ecx, r12d
cmp ecx, r10d
jne 0x1800a4653
cmp dword [rsp + 0x34], edi
mov dword [rbp - 4], ebx
sete al
add al, 0x26
mov byte [rbp + 0xc], al
test r10d, r10d
jle 0x1800a464e
mov dword [rbp + 4], r14d
mov dword [rbp + 8], ecx
jmp 0x1800a4657
mov dword [rbp + 8], edi
jmp 0x1800a4657
mov byte [rbp + 0xc], 0xb8
mov rdx, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x40]
mov r11, qword [rsp + 0x58]
add rbp, 0x14
mov ecx, dword [rsp + 0x30]
movzx eax, word [r8 + 0x3c]
inc r12d
add ecx, r12d
dec r14d
add r15, 8
cmp ecx, eax
jl 0x1800a44e0
mov rbx, qword [rsp + 0x60]
mov r12, qword [rsp + 0xd0]
test r10d, r10d
jle 0x1800a470a
test dword [r8 + 0x38], 0x100400
jne 0x1800a470a
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r12 + 8]
cmp dword [rsi + 0x94], ecx
jg 0x1800a46d6
xor r9d, r9d
mov r8d, edx
mov rcx, rsi
lea edx, [r9 + 0x7d]
mov dword [rsp + 0x20], r10d
call fcn.180035350
jmp 0x1800a470a
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], rdi
mov dword [rax + rcx*8], 0x7d
jmp 0x1800a470a
mov dword [r12 + 0x50], edi
mov rax, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x38]
mov rcx, qword [rax]
test rsi, rsi
je 0x1800a3ff5
test rcx, rcx
je 0x1800a4785
cmp rsi, qword [rcx + 0x208]
jae 0x1800a476f
cmp rsi, qword [rcx + 0x1f8]
jb 0x1800a4750
mov rax, qword [rcx + 0x1f0]
mov qword [rsi], rax
mov qword [rcx + 0x1f0], rsi
jmp 0x1800a3ff5
cmp rsi, qword [rcx + 0x200]
jb 0x1800a476f
mov rax, qword [rcx + 0x1e0]
mov qword [rsi], rax
mov qword [rcx + 0x1e0], rsi
jmp 0x1800a3ff5
cmp qword [rcx + 0x320], rdi
je 0x1800a4785
mov rdx, rsi
call fcn.18000bfe0
jmp 0x1800a3ff5
cmp dword [0x180172920], edi
je 0x1800a47dd
mov rcx, qword [0x1801821a8]
test rcx, rcx
je 0x1800a479f
call qword [0x1801729a0]
mov rcx, rsi
call qword [0x180172958]
dec qword [0x180182138]
movsxd rcx, eax
sub qword [0x1801820f0], rcx
mov rcx, rsi
call qword [0x180172948]
mov rcx, qword [0x1801821a8]
test rcx, rcx
je 0x1800a3ff5
call qword [0x1801729b0]
jmp 0x1800a3ff5
mov rcx, rsi
call qword [0x180172948]
jmp 0x1800a3ff5
mov r8d, dword [rsp + 0xe8]
mov rdx, qword [rbp + 0x18]
call fcn.180057640
mov edx, eax
jmp 0x1800a3ffc
or word [rbx + 0x12], 4
movsxd rcx, dword [rbx + 0x18]
test ecx, ecx
js 0x1800a4830
mov rax, qword [rbx + 8]
mov rbx, rcx
imul rbx, rbx, 0x38
add rbx, qword [rax + 0x20]
dec byte [rbx + 0x16]
jne 0x1800a4830
inc edi
test byte [rbx + 0x12], 4
je 0x1800a4031
mov eax, edx
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret