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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x40
xor ebp, ebp
mov rsi, rdx
mov rbx, rcx
cmp byte [rcx + 0x4234b], bpl
je 0x18002b369
mov eax, dword [rcx + 0x426c0]
test eax, eax
je 0x18002b2ed
lea edx, [rax - 1]
imul r8, rdx, 0x1ab8
add r8, qword [rcx + 0x426b8]
jmp 0x18002b2f0
mov r8, rbp
mov rcx, qword [rcx + 0x42350]
mov rdx, rsi
call fcn.18002a160
test al, al
je 0x18002b315
inc dword [rbx + 0x42368]
inc dword [rbx + 0x42360]
inc dword [rbx + 0x42364]
mov rcx, qword [rbx + 0x42350]
cmp dword [rcx + 0x6cc], ebp
jne 0x18002b369
mov eax, dword [rbx + 0x4236c]
mov rcx, qword [rcx + 0x6d0]
mov dword [rcx], eax
mov eax, dword [rbx + 0x42370]
mov dword [rcx + 4], eax
mov eax, dword [rbx + 0x42364]
mov dword [rcx + 8], eax
mov eax, dword [rbx + 0x42360]
mov dword [rcx + 0xc], eax
mov eax, dword [rbx + 0x42368]
mov dword [rcx + 0x10], eax
mov eax, dword [rbx + 0x426dc]
mov dword [rcx + 0x14], eax
mov eax, dword [rbx + 0x426c8]
mov dword [rcx + 0x18], eax
cmp byte [rbx + 0x426cd], bpl
je 0x18002b37d
mov rdx, rsi
mov rcx, rbx
call fcn.18002cdf0
cmp byte [rbx + 0x2f], bpl
je 0x18002b393
mov ebp, dword [rsi + 0xa4]
mov byte [rsp + 0x70], 0
cmp ebp, 1
jne 0x18002b398
mov byte [rsp + 0x70], 1
lea rdi, [rbx + 0x423c8]
mov qword [rsp + 0x38], r13
lea rcx, [rdi + 0x28]
mov qword [rsp + 0x30], r15
mov edx, 0xffffffff
call fcn.1800632b0
test al, al
je 0x18002b429
lea rcx, [rdi + 8]
mov qword [rsp + 0x80], r12
call fcn.1800632a0
mov ecx, dword [rdi + 0x40]
mov rax, qword [rdi]
mov r15d, dword [rdi + 0x38]
mov r14, qword [rax + rcx*8]
lea eax, [rcx + 1]
mov dword [rdi + 0x40], eax
cmp eax, r15d
jb 0x18002b3eb
sub eax, r15d
mov dword [rdi + 0x40], eax
mov r13d, dword [rdi + 0x3c]
lea rcx, [rdi + 0x18]
lea eax, [r13 - 1]
mov dword [rdi + 0x3c], eax
call fcn.180063ac0
lea rcx, [rdi + 8]
call fcn.180064230
mov rcx, qword [rdi + 0x48]
mov r12, qword [rsp + 0x80]
test rcx, rcx
je 0x18002b42e
cmp r13d, r15d
jne 0x18002b42e
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 0x10]
jmp 0x18002b42e
mov r14, qword [rsp + 0x70]
mov r8, qword [rsi + 0x30]
mov rdx, r14
mov rcx, rbx
call fcn.180026b10
mov rax, qword [rsi + 0x38]
lea rdi, [rbx + 0x42378]
lea rcx, [rdi + 0x18]
mov qword [r14 + 8], rax
xor edx, edx
call fcn.1800632b0
mov r13, qword [rsp + 0x38]
test al, al
je 0x18002b4bb
lea rcx, [rdi + 8]
call fcn.1800632a0
mov ecx, dword [rdi + 0x44]
mov rax, qword [rdi]
mov qword [rax + rcx*8], r14
mov eax, dword [rdi + 0x44]
mov edx, dword [rdi + 0x38]
inc eax
mov dword [rdi + 0x44], eax
cmp eax, edx
jb 0x18002b487
sub eax, edx
mov dword [rdi + 0x44], eax
mov r14d, dword [rdi + 0x3c]
lea rcx, [rdi + 0x28]
lea eax, [r14 + 1]
mov dword [rdi + 0x3c], eax
call fcn.180063ac0
lea rcx, [rdi + 8]
call fcn.180064230
mov rcx, qword [rdi + 0x48]
test rcx, rcx
je 0x18002b4bb
test r14d, r14d
jne 0x18002b4bb
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 8]
test byte [rsi + 0x10], 0x20
je 0x18002b504
test dword [rbx + 0xa39c], 0x4000
je 0x18002b504
lea rcx, [rbx + 0x425e8]
mov r8d, 0xffffffff
lea rdx, [rsp + 0x78]
call fcn.18002e640
mov rax, qword [rsi + 0x6e0]
lea rcx, [rbx + 0x42598]
xor r8d, r8d
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x78]
call fcn.18002ac40
mov eax, dword [rbx + 0x426c0]
mov r8d, 0xd28
mov rdi, qword [rbx + 0x426b8]
imul rdx, rax, 0x1ab8
movsxd rax, ebp
add rdi, 8
imul rcx, rax, 0xd28
add rdx, rcx
add rdi, rdx
mov rdx, rsi
mov rcx, rdi
call fcn.180069a90
mov eax, dword [rbx + 0x426c0]
imul rcx, rax, 0x1ab8
mov rax, qword [rbx + 0x426b8]
mov dword [rcx + rax], 0xff
cmp qword [rdi + 0x678], 0
je 0x18002b6c1
mov rdx, rsi
mov rcx, rbx
call fcn.18002a440
test al, al
jne 0x18002b58a
mov eax, 8
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r9d, dword [rbx + 0x1c]
lea rdx, [rbx + 0xa3c0]
mov r8d, dword [rbx + 0x18]
add r9d, 0xf
mov rax, qword [rbx]
add r8d, 0xf
shr r9d, 4
mov rcx, rbx
shr r8d, 4
call qword [rax + 0xc8]
mov r9d, dword [rbx + 0x1c]
lea rdx, [rdi + 0x658]
mov r8d, dword [rbx + 0x18]
add r9d, 0xf
mov r10, qword [rbx]
add r8d, 0xf
shr r9d, 4
mov rcx, rbx
shr r8d, 4
mov r14, rax
call qword [r10 + 0xc8]
cmp rax, r14
jae 0x18002b619
mov r9d, dword [rbx + 0x1c]
lea rdx, [rdi + 0x658]
mov r8d, dword [rbx + 0x18]
add r9d, 0xf
mov rax, qword [rbx]
add r8d, 0xf
shr r9d, 4
mov rcx, rbx
shr r8d, 4
call qword [rax + 0xc8]
mov rbp, rax
jmp 0x18002b61c
mov rbp, r14
mov eax, dword [rbx + 0x426c0]
mov r15, qword [rdi + 0x678]
imul rcx, rax, 0x1ab8
mov rax, qword [rbx + 0x426b8]
mov rcx, qword [rcx + rax + 0x1a78]
test rbp, rbp
je 0x18002b69e
test rcx, rcx
jne 0x18002b656
call fcn.1800787b0
mov dword [rax], 0x16
jmp 0x18002b699
test r15, r15
je 0x18002b66d
cmp r14, rbp
jb 0x18002b66d
mov r8, rbp
mov rdx, r15
call fcn.180069a90
jmp 0x18002b69e
mov r8, r14
xor edx, edx
call fcn.180069880
test r15, r15
jne 0x18002b689
call fcn.1800787b0
mov dword [rax], 0x16
jmp 0x18002b699
cmp r14, rbp
jae 0x18002b69e
call fcn.1800787b0
mov dword [rax], 0x22
call fcn.1800785b8
mov eax, dword [rbx + 0x426c0]
imul rcx, rax, 0x1ab8
mov rax, qword [rbx + 0x426b8]
mov rcx, qword [rcx + rax + 0x1a78]
mov qword [rdi + 0x678], rcx
mov rax, qword [rbx + 0xa3b0]
cmp dword [rax + 0x88], 0
je 0x18002b767
mov rdx, qword [rdi + 0x6b0]
test rdx, rdx
je 0x18002b767
cmp dword [rdi + 0x6b8], 0
je 0x18002b767
mov ecx, dword [rbx + 0x18]
mov eax, dword [rbx + 0x1c]
add ecx, 0xf
add eax, 0xf
shr ecx, 4
shr eax, 4
imul ecx, eax
cmp dword [rsi + 0x6b8], ecx
jae 0x18002b720
mov eax, 0xe
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, dword [rbx + 0x426c0]
mov r8d, ecx
mov rcx, qword [rbx + 0x426b8]
imul r9, rax, 0x1ab8
mov rcx, qword [r9 + rcx + 0x1a80]
call fcn.180069a90
mov eax, dword [rbx + 0x426c0]
imul rcx, rax, 0x1ab8
mov rax, qword [rbx + 0x426b8]
mov rcx, qword [rcx + rax + 0x1a80]
mov qword [rdi + 0x6b0], rcx
mov eax, dword [rbx + 0x426c0]
mov r8, rdi
mov r10, qword [rbx]
mov rdx, rdi
imul r9, rax, 0x1ab8
mov rcx, rbx
add r9, qword [rbx + 0x426b8]
lea rax, [r9 + 0x1a98]
add r9, 0x1a90
mov qword [rsp + 0x20], rax
call qword [r10 + 0xa8]
test eax, eax
jne 0x18002b80e
cmp byte [rsp + 0x70], al
je 0x18002b7f8
inc dword [rbx + 0x426c0]
xor edx, edx
inc dword [rbx + 0x42360]
mov rcx, rbx
inc dword [rbx + 0x42364]
inc dword [rbx + 0x42368]
cmp byte [rbx + 0x4234b], dl
je 0x18002b7e4
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
jmp 0x18002c580
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
jmp fcn.18002c200
cmp dword [rbx + 0xa394], 0
mov ecx, 0x11
cmove eax, ecx
cmp byte [rbx + 0x2f], 0
cmovne eax, ecx
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov eax, dword [rcx + 0x426c0]
xor r13d, r13d
movzx ebx, dl
mov rdi, rcx
mov ebp, r13d
test eax, eax
je 0x18002c9d1
mov r15d, dword [rcx + 0xb820]
lea ecx, [rax - 1]
imul rsi, rcx, 0x1ab8
mov rcx, qword [rdi + 0x42350]
add rsi, qword [rdi + 0x426b8]
cmp byte [rcx + 0x24], bpl
jne 0x18002c6f3
lea rdx, [rsi + 8]
call fcn.180027800
mov rcx, qword [rdi + 0x42350]
mov rdx, rsi
test al, al
je 0x18002c6ee
lea r8, [rsp + 0x90]
mov dword [rsp + 0x90], r13d
call fcn.180027430
mov rax, qword [rdi + 0x42350]
mov rdx, rsi
mov r8d, dword [rsp + 0x90]
movzx ecx, byte [rax + 0x7a0]
mov byte [rsi + 0x1a88], cl
mov rcx, rdi
mov rax, qword [rdi + 0x42350]
mov ebx, dword [rax + 0x6cc]
test ebx, ebx
setne r14b
mov byte [rsp + 0x80], r14b
call fcn.18002bb80
dec dword [rdi + 0x426c0]
mov ebp, eax
test ebx, ebx
je 0x18002c6db
dec dword [rdi + 0x42360]
dec dword [rdi + 0x42364]
dec dword [rdi + 0x42368]
mov rax, qword [rdi + 0x42350]
mov r9d, dword [rax + 0x28]
mov r8d, dword [rax + 0x20]
cmp r9d, r8d
je 0x18002c6a8
mov edx, dword [rax + 0x40]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x20], rcx
mov rcx, rdi
call fcn.18002af80
test eax, eax
jne 0x18002c9d3
movzx r14d, byte [rsp + 0x80]
mov rdx, qword [rdi + 0x42350]
mov eax, dword [rdx + 0x20]
lea rcx, [rdx + 0x20]
cmp dword [rdx + 0x28], eax
jne 0x18002c6db
test r14b, r14b
je 0x18002c6db
xor edx, edx
mov r8d, 0x6a8
call fcn.180069880
mov dword [rdi + 0x426c0], r13d
mov dword [rdi + 0x42368], r13d
lea rbx, [rdi + 0x4236c]
lea r14, [rdi + 0x42368]
jmp 0x18002c92f
call fcn.180029e80
mov rax, qword [rdi + 0x42350]
lea r14, [rdi + 0x42368]
mov r12d, dword [r14]
dec r12d
cmp byte [rax + 0x24], bpl
je 0x18002c76a
test bl, bl
mov r9d, r15d
mov r8d, r12d
mov rdx, rsi
setne al
mov rcx, rdi
mov byte [rsp + 0x20], al
call fcn.18002adf0
mov rcx, qword [rdi + 0xa3b0]
mov rdx, rsi
mov eax, dword [rsi]
add rcx, 0x28
mov r9d, dword [rdi + 0x42370]
mov r15d, r12d
mov r8d, dword [rdi + 0x426c0]
add r9d, r12d
mov dword [rsp + 0x30], r12d
dec r8d
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
mov rcx, qword [rdi + 0x42350]
call fcn.180029d80
jmp 0x18002c77d
mov eax, dword [rax + 0x6e4]
mov dword [rsi], eax
mov rax, qword [rdi + 0x42350]
mov r15d, dword [rax + 0x20]
cmp dword [rsi], 6
lea rbx, [rdi + 0x4236c]
jne 0x18002c78c
mov dword [rbx], r13d
test dword [rdi + 0xb818], 0x400
je 0x18002c7a2
cmp dword [rdi + 0xbe50], ebp
je 0x18002c7a2
inc dword [rbx]
cmp dword [rsi], 1
jne 0x18002c804
mov eax, dword [rdi + 0x426c0]
cmp eax, 2
jb 0x18002c7d8
add eax, 0xfffffffe
mov ecx, eax
mov eax, dword [rsi + 0x1c]
imul rdx, rcx, 0x1ab8
mov rcx, qword [rdi + 0x426b8]
cmp dword [rdx + rcx + 0x1c], eax
jne 0x18002c7d8
mov eax, 8
jmp 0x18002c9d3
cmp byte [rdi + 0x30], bpl
jne 0x18002c804
cmp dword [rdi + 0xa394], ebp
je 0x18002c7fa
mov eax, dword [0x1800eb500]
and eax, 0xfffffff0
cmp eax, 0xa0
jb 0x18002c92f
mov ebp, 0x11
jmp 0x18002c92f
mov r9, qword [rdi + 0x426b8]
mov eax, r12d
imul rcx, rax, 0x1ab8
cmp dword [rcx + r9], 2
jne 0x18002c823
mov dword [rdi + 0x42364], r15d
cmp dword [rcx + r9], 3
jne 0x18002c838
mov dword [rdi + 0x42370], r13d
mov qword [rdi + 0x42360], r13
cmp dword [rcx + r9], 1
je 0x18002c842
mov dword [r14], r13d
mov eax, dword [rdi + 0x426c0]
mov rcx, rdi
mov r8d, dword [rdi + 0x42370]
dec eax
imul rdx, rax, 0x1ab8
add r8d, r15d
add rdx, r9
call fcn.18002bb80
mov rdx, qword [rdi + 0x42350]
test eax, eax
cmovne ebp, eax
cmp dword [rdx + 0x6cc], r13d
jne 0x18002c89b
mov eax, dword [rdi + 0x426c0]
dec eax
imul rcx, rax, 0x1ab8
mov rax, qword [rdi + 0x426b8]
mov ecx, dword [rcx + rax + 0x1c]
mov dword [rdx + 0x79c], ecx
mov rax, qword [rdi + 0x42350]
cmp dword [rax + 0x6cc], r13d
je 0x18002c91f
test r15d, r15d
je 0x18002c91f
mov edx, dword [rdi + 0x42370]
lea rax, [rsp + 0x80]
dec dword [rdi + 0x426c0]
xor r9d, r9d
mov r8d, r15d
mov qword [rsp + 0x20], rax
mov rcx, rdi
mov byte [rsp + 0x80], r13b
call fcn.18002af80
mov ebp, eax
test eax, eax
jne 0x18002c9d3
mov rdx, qword [rdi + 0x42350]
mov eax, dword [rdx + 0x20]
lea rcx, [rdx + 0x20]
cmp dword [rdx + 0x28], eax
jne 0x18002c925
cmp byte [rsp + 0x80], r13b
je 0x18002c925
xor edx, edx
mov r8d, 0x6a8
call fcn.180069880
mov dword [r14], r13d
mov dword [rdi + 0x426c0], r13d
jmp 0x18002c925
dec dword [rdi + 0x426c0]
lea eax, [r15 + 1]
add dword [rdi + 0x42370], eax
test byte [rsi + 0x18], 0x10
je 0x18002c9d1
mov eax, dword [rsi + 0x6e4]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x42350]
shl rcx, 4
add rcx, qword [rax + 0x6d8]
mov eax, dword [rbx]
mov dword [rcx], eax
mov eax, dword [rdi + 0x42370]
mov dword [rcx + 4], eax
mov eax, dword [rdi + 0x42364]
mov dword [rcx + 8], eax
mov eax, dword [rdi + 0x42360]
mov dword [rcx + 0xc], eax
mov eax, dword [r14]
mov dword [rcx + 0x10], eax
mov eax, dword [rdi + 0x426dc]
mov dword [rcx + 0x14], eax
mov eax, dword [rdi + 0x426c8]
mov dword [rcx + 0x18], eax
mov rax, qword [rdi + 0x42350]
mov rcx, qword [rax + 0x6d0]
mov eax, dword [rcx]
mov dword [rbx], eax
mov eax, dword [rcx + 4]
mov dword [rdi + 0x42370], eax
mov eax, dword [rcx + 8]
mov dword [rdi + 0x42364], eax
mov eax, dword [rcx + 0xc]
mov dword [rdi + 0x42360], eax
mov eax, dword [rcx + 0x10]
mov dword [r14], eax
mov eax, dword [rcx + 0x14]
mov dword [rdi + 0x426dc], eax
mov eax, dword [rcx + 0x18]
mov dword [rdi + 0x426c8], eax
mov eax, ebp
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret