Function at 0x18002b2e0
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 0x18002b399
mov eax, dword [rcx + 0x426c0]
test eax, eax
je 0x18002b31d
lea edx, [rax - 1]
imul r8, rdx, 0x1ab8
add r8, qword [rcx + 0x426b8]
jmp 0x18002b320
mov r8, rbp
mov rcx, qword [rcx + 0x42350]
mov rdx, rsi
call fcn.18002a190
test al, al
je 0x18002b345
inc dword [rbx + 0x42368]
inc dword [rbx + 0x42360]
inc dword [rbx + 0x42364]
mov rcx, qword [rbx + 0x42350]
cmp dword [rcx + 0x6cc], ebp
jne 0x18002b399
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 0x18002b3ad
mov rdx, rsi
mov rcx, rbx
call fcn.18002ce20
cmp byte [rbx + 0x2f], bpl
je 0x18002b3c3
mov ebp, dword [rsi + 0xa4]
mov byte [rsp + 0x70], 0
cmp ebp, 1
jne 0x18002b3c8
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.180063480
test al, al
je 0x18002b459
lea rcx, [rdi + 8]
mov qword [rsp + 0x80], r12
call fcn.180063470
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 0x18002b41b
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.180063c90
lea rcx, [rdi + 8]
call fcn.180064400
mov rcx, qword [rdi + 0x48]
mov r12, qword [rsp + 0x80]
test rcx, rcx
je 0x18002b45e
cmp r13d, r15d
jne 0x18002b45e
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 0x10]
jmp 0x18002b45e
mov r14, qword [rsp + 0x70]
mov r8, qword [rsi + 0x30]
mov rdx, r14
mov rcx, rbx
call fcn.180026b20
mov rax, qword [rsi + 0x38]
lea rdi, [rbx + 0x42378]
lea rcx, [rdi + 0x18]
mov qword [r14 + 8], rax
xor edx, edx
call fcn.180063480
mov r13, qword [rsp + 0x38]
test al, al
je 0x18002b4eb
lea rcx, [rdi + 8]
call fcn.180063470
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 0x18002b4b7
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.180063c90
lea rcx, [rdi + 8]
call fcn.180064400
mov rcx, qword [rdi + 0x48]
test rcx, rcx
je 0x18002b4eb
test r14d, r14d
jne 0x18002b4eb
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 8]
test byte [rsi + 0x10], 0x20
je 0x18002b534
test dword [rbx + 0xa39c], 0x4000
je 0x18002b534
lea rcx, [rbx + 0x425e8]
mov r8d, 0xffffffff
lea rdx, [rsp + 0x78]
call fcn.18002e670
mov rax, qword [rsi + 0x6e0]
lea rcx, [rbx + 0x42598]
xor r8d, r8d
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x78]
call fcn.18002ac70
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.180069c60
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 0x18002b6f1
mov rdx, rsi
mov rcx, rbx
call fcn.18002a470
test al, al
jne 0x18002b5ba
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 0x18002b649
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 0x18002b64c
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 0x18002b6ce
test rcx, rcx
jne 0x18002b686
call fcn.180078980
mov dword [rax], 0x16
jmp 0x18002b6c9
test r15, r15
je 0x18002b69d
cmp r14, rbp
jb 0x18002b69d
mov r8, rbp
mov rdx, r15
call fcn.180069c60
jmp 0x18002b6ce
mov r8, r14
xor edx, edx
call fcn.180069a50
test r15, r15
jne 0x18002b6b9
call fcn.180078980
mov dword [rax], 0x16
jmp 0x18002b6c9
cmp r14, rbp
jae 0x18002b6ce
call fcn.180078980
mov dword [rax], 0x22
call fcn.180078788
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 0x18002b797
mov rdx, qword [rdi + 0x6b0]
test rdx, rdx
je 0x18002b797
cmp dword [rdi + 0x6b8], 0
je 0x18002b797
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 0x18002b750
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.180069c60
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 0x18002b83e
cmp byte [rsp + 0x70], al
je 0x18002b828
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 0x18002b814
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
jmp 0x18002c5b0
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
jmp fcn.18002c230
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 0x18002ca01
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 0x18002c723
lea rdx, [rsi + 8]
call fcn.180027810
mov rcx, qword [rdi + 0x42350]
mov rdx, rsi
test al, al
je 0x18002c71e
lea r8, [rsp + 0x90]
mov dword [rsp + 0x90], r13d
call fcn.180027440
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.18002bbb0
dec dword [rdi + 0x426c0]
mov ebp, eax
test ebx, ebx
je 0x18002c70b
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 0x18002c6d8
mov edx, dword [rax + 0x40]
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x20], rcx
mov rcx, rdi
call fcn.18002afb0
test eax, eax
jne 0x18002ca03
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 0x18002c70b
test r14b, r14b
je 0x18002c70b
xor edx, edx
mov r8d, 0x6a8
call fcn.180069a50
mov dword [rdi + 0x426c0], r13d
mov dword [rdi + 0x42368], r13d
lea rbx, [rdi + 0x4236c]
lea r14, [rdi + 0x42368]
jmp 0x18002c95f
call fcn.180029eb0
mov rax, qword [rdi + 0x42350]
lea r14, [rdi + 0x42368]
mov r12d, dword [r14]
dec r12d
cmp byte [rax + 0x24], bpl
je 0x18002c79a
test bl, bl
mov r9d, r15d
mov r8d, r12d
mov rdx, rsi
setne al
mov rcx, rdi
mov byte [rsp + 0x20], al
call fcn.18002ae20
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.180029db0
jmp 0x18002c7ad
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 0x18002c7bc
mov dword [rbx], r13d
test dword [rdi + 0xb818], 0x400
je 0x18002c7d2
cmp dword [rdi + 0xbe50], ebp
je 0x18002c7d2
inc dword [rbx]
cmp dword [rsi], 1
jne 0x18002c834
mov eax, dword [rdi + 0x426c0]
cmp eax, 2
jb 0x18002c808
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 0x18002c808
mov eax, 8
jmp 0x18002ca03
cmp byte [rdi + 0x30], bpl
jne 0x18002c834
cmp dword [rdi + 0xa394], ebp
je 0x18002c82a
mov eax, dword [0x1800ec500]
and eax, 0xfffffff0
cmp eax, 0xa0
jb 0x18002c95f
mov ebp, 0x11
jmp 0x18002c95f
mov r9, qword [rdi + 0x426b8]
mov eax, r12d
imul rcx, rax, 0x1ab8
cmp dword [rcx + r9], 2
jne 0x18002c853
mov dword [rdi + 0x42364], r15d
cmp dword [rcx + r9], 3
jne 0x18002c868
mov dword [rdi + 0x42370], r13d
mov qword [rdi + 0x42360], r13
cmp dword [rcx + r9], 1
je 0x18002c872
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.18002bbb0
mov rdx, qword [rdi + 0x42350]
test eax, eax
cmovne ebp, eax
cmp dword [rdx + 0x6cc], r13d
jne 0x18002c8cb
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 0x18002c94f
test r15d, r15d
je 0x18002c94f
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.18002afb0
mov ebp, eax
test eax, eax
jne 0x18002ca03
mov rdx, qword [rdi + 0x42350]
mov eax, dword [rdx + 0x20]
lea rcx, [rdx + 0x20]
cmp dword [rdx + 0x28], eax
jne 0x18002c955
cmp byte [rsp + 0x80], r13b
je 0x18002c955
xor edx, edx
mov r8d, 0x6a8
call fcn.180069a50
mov dword [r14], r13d
mov dword [rdi + 0x426c0], r13d
jmp 0x18002c955
dec dword [rdi + 0x426c0]
lea eax, [r15 + 1]
add dword [rdi + 0x42370], eax
test byte [rsi + 0x18], 0x10
je 0x18002ca01
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