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

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x140
mov rax, qword [0x18029e198]
xor rax, rsp
mov qword [rsp + 0x138], rax
mov rax, r9
mov qword [rsp + 0xd8], rax
mov r15, r8
mov qword [rsp + 0xf0], r8
mov r11, rdx
mov qword [rsp + 0xa8], rdx
mov r9, rcx
mov qword [rsp + 0x88], rcx
movzx edi, byte [rsp + 0x1b0]
mov byte [rsp + 0x73], dil
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], r8
mov qword [rsp + 0x110], rax
mov ebx, 5
mov qword [rsp + 0xc8], rcx
xor r14d, r14d
test r8, r8
je 0x1801d33de
mov qword [r8], r14
test rax, rax
je 0x1801d33e6
mov qword [rax], r14
mov qword [rsp + 0xf8], r14
test r9, r9
jne 0x1801d3413
call fcn.1801d6d40
mov r9, rax
mov qword [rsp + 0x88], rax
mov qword [rsp + 0xc8], rax
mov r11, qword [rsp + 0xa8]
test r11, r11
je 0x1801d341b
mov qword [r11], r14
test r9, r9
je 0x1801d3999
mov rdx, 0xffffffffffffffff
mov qword [rsp + 0x90], rdx
mov rsi, r9
mov qword [rsp + 0xe8], r9
movsxd rax, dword [r9 + 0x3c]
test eax, eax
je 0x1801d399e
mov byte [rsp + 0x71], 0
lea r10, [r9 + rax]
mov qword [rsp + 0xd0], r10
movzx eax, word [r10 + 6]
mov dword [rsp + 0xa4], eax
movzx eax, word [r10 + 0x14]
lea rcx, [r10 + 0x18]
add rcx, rax
mov qword [rsp + 0x118], rcx
mov eax, dword [r10]
xor eax, 0x75652121
cmp eax, 0x75656471
jne 0x1801d399e
cmp dword [r10 + 0x84], 1
jb 0x1801d3992
mov ecx, dword [r10 + 0x90]
mov eax, dword [r10 + 0x94]
test ecx, ecx
je 0x1801d3986
test eax, eax
je 0x1801d397f
cmp eax, 0x14
jb 0x1801d3961
lea rbx, [rcx + r9]
mov qword [rsp + 0x78], rbx
mov byte [rsp + 0x70], 0
add rax, rcx
add rax, r9
mov qword [rsp + 0xc0], rax
mov r12, r14
mov qword [rsp + 0xb8], r14
test dil, dil
je 0x1801d3552
mov rcx, r9
xor rcx, 0xffffffff8a9adede
mov rax, qword [0x1802b1f10]
cmp rax, rcx
jne 0x1801d3552
mov rax, qword [0x1802b1f00]
test rax, rax
je 0x1801d3552
mov rax, qword [0x1802b1f00]
xor rax, 0xffffffff8a9adede
je 0x1801d3552
mov ecx, dword [rax]
test ecx, ecx
je 0x1801d3552
mov edx, dword [rax + 4]
test edx, edx
je 0x1801d3552
mov r8d, 0x8a9adede
xor rcx, r8
lea rbx, [rcx + r9]
mov qword [rsp + 0x78], rbx
mov eax, edx
xor rax, r8
add rax, rcx
add rax, r9
mov qword [rsp + 0xc0], rax
mov r8d, 3
mov dword [rsp + 0x74], r8d
nop dword [rax]
mov r13, rbx
mov qword [rsp + 0x80], rbx
cmp rbx, qword [rsp + 0xc0]
jae 0x1801d3910
mov eax, dword [rbx + 0xc]
test eax, eax
je 0x1801d3910
lea rcx, [rsi + rax]
mov qword [rsp + 0x120], rcx
call fcn.1801dc380
test rax, rax
je 0x1801d3915
mov ecx, dword [rbx]
test ecx, ecx
jne 0x1801d35d7
cmp dword [rbx + 0x10], ecx
je 0x1801d3915
mov r8, qword [rax + 0x30]
mov qword [rsp + 0xb0], r8
mov eax, dword [rax + 0x40]
add rax, r8
mov qword [rsp + 0xe0], rax
mov r15, r14
mov qword [rsp + 0x98], r14
mov eax, dword [rbx + 0x10]
jmp 0x1801d360e
mov r8, qword [rax + 0x30]
mov qword [rsp + 0xb0], r8
mov eax, dword [rax + 0x40]
add rax, r8
mov qword [rsp + 0xe0], rax
mov r15, r14
mov qword [rsp + 0x98], r14
mov rdi, r14
mov qword [rsp + 0x130], r14
mov eax, dword [rbx + 0x10]
test eax, eax
je 0x1801d361b
mov edi, eax
add rdi, rsi
mov qword [rsp + 0x130], rdi
test ecx, ecx
je 0x1801d36be
lea r15, [rsi + rcx]
mov rdx, r12
test r15, r15
cmovne rdx, r15
movzx eax, byte [rsp + 0x1a8]
mov byte [rsp + 0x60], al
movzx eax, byte [rsp + 0x1a0]
mov byte [rsp + 0x58], al
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], 1
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x28], rax
mov r9, qword [rsp + 0xb0]
mov qword [rsp + 0x20], r9
mov r8, rdi
mov rcx, qword [rsp + 0x88]
call fcn.1801d2ff0
test al, al
je 0x1801d3915
mov byte [rsp + 0x71], 1
jmp 0x1801d3915
test rdi, rdi
je 0x1801d3627
mov eax, r14d
mov dword [rsp + 0x128], eax
mov esi, eax
mov dword [rsp + 0xa0], eax
mov ecx, eax
movzx edx, byte [rcx + rdi]
mov byte [rsp + 0x72], dl
jmp 0x1801d376c
test dl, dl
je 0x1801d3777
inc eax
jmp 0x1801d36ca
test esi, esi
setne al
mov edx, r14d
movzx ecx, al
cmp byte [rsp + 0x73], 0
cmove edx, ecx
test dl, dl
je 0x1801d3915
mov eax, esi
shl rax, 2
mov qword [rsp + 0x98], rax
shr rax, 0xc
lea edx, [rax + 1]
shl edx, 0xc
xor ecx, ecx
lea r9d, [rcx + 4]
mov r8d, 0x101000
call fcn.1801dbfb0
mov r12, rax
mov qword [rsp + 0xb8], rax
cmp qword [rsp + 0x90], 0xffffffffffffffff
jne 0x1801d3915
test rax, rax
je 0x1801d3915
mov rcx, qword [rsp + 0x88]
call fcn.1801d2770
mov qword [rsp + 0x80], rax
test rax, rax
je 0x1801d3905
call fcn.1801d74c0
test rax, rax
je 0x1801d3905
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov r8d, dword [rsp + 0x74]
mov dword [rsp + 0x20], r8d
xor r9d, r9d
mov edx, 0x80000000
mov rcx, qword [rsp + 0x80]
call rax
mov qword [rsp + 0x90], rax
cmp rax, 0xffffffffffffffff
je 0x1801d3905
mov rcx, rdi
sub rcx, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xd0]
mov r9d, dword [rax + 0x38]
mov r8d, dword [rsp + 0xa4]
mov rdx, qword [rsp + 0x118]
call fcn.1801dc4c0
mov qword [rsp + 0x80], rax
test rax, rax
je 0x1801d3915
call fcn.1801d7f20
test rax, rax
je 0x1801d3905
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x130], rcx
xor r9d, r9d
lea r8, [rsp + 0x134]
mov edx, ecx
mov r13, qword [rsp + 0x90]
mov rcx, r13
call rax
cmp eax, dword [rsp + 0x130]
jne 0x1801d3915
call fcn.1801d7e30
test rax, rax
je 0x1801d3915
mov dword [rsp + 0x128], r14d
lea r8d, [rsi*4]
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x128]
mov rdx, r12
mov rcx, r13
call rax
test eax, eax
je 0x1801d3915
mov eax, dword [rsp + 0x128]
cmp rax, qword [rsp + 0x98]
jne 0x1801d3915
jmp 0x1801d3627
lea rbx, [r13 + 0x14]
mov qword [rsp + 0x78], rbx
jmp 0x1801d3923
mov byte [rsp + 0x70], 1
add rbx, 0x14
mov qword [rsp + 0x78], rbx
test r12, r12
je 0x1801d393e
xor edx, edx
mov r8d, 0x8000
mov rcx, r12
call fcn.1801dc030
mov r12, r14
mov qword [rsp + 0xb8], r14
cmp byte [rsp + 0x70], 0
mov rsi, qword [rsp + 0xe8]
je 0x1801d3560
mov rdx, qword [rsp + 0x90]
mov r15, qword [rsp + 0xf0]
mov ebx, r14d
cmp byte [rsp + 0x71], 0
setne bl
add ebx, 6
cmp rdx, 0xffffffffffffffff
je 0x1801d399e
mov rcx, rdx
call fcn.1801d6410
jmp 0x1801d399e
mov ebx, 3
jmp 0x1801d399e
mov ebx, r14d
test eax, eax
setne bl
inc ebx
jmp 0x1801d399e
mov ebx, 1
jmp 0x1801d399e
mov ebx, 8
mov eax, ebx
test r15, r15
je 0x1801d39b0
mov rcx, qword [rsp + 0xf8]
mov qword [r15], rcx
mov rcx, qword [rsp + 0x138]
xor rcx, rsp
call fcn.1801e67e0
add rsp, 0x140
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret