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

Disassembly:
mov rax, rsp
mov word [rax + 0x20], r9w
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
xor r14d, r14d
mov rdi, r8
mov r13, rdx
mov r10, rcx
mov r15d, r14d
mov r11d, r14d
mov qword [rsp + 0x40], r14
cmp word [rsp + 0x100], r14w
je 0x18011b68a
mov rax, qword [rcx]
mov r8, qword [rax]
test byte [r8 + 0x60], 0x40
jne 0x18011be71
movzx edx, word [rdx]
mov word [rsp + 0x4e], dx
cmp edx, 0x3f
ja 0x18011be71
mov ecx, edx
mov dword [rsp + 0x50], edx
mov ebp, 1
mov qword [rsp + 0x70], r14
mov edx, ebp
mov qword [rsp + 0x58], r14
shl rdx, cl
movzx eax, r9w
sub rdx, rbp
mov ecx, 0x803
and ax, cx
mov qword [rsp + 0x78], rdx
neg ax
mov r12b, bpl
mov ecx, r14d
mov dword [rsp + 0x34], r12d
sbb r8w, r8w
mov dword [rsp + 0x54], ecx
neg r8w
mov rbx, r14
add r8w, 0x182
mov qword [rsp + 0x80], rbx
mov word [rsp + 0x32], r8w
mov rsi, r14
cmp r11, rdx
jae 0x18011be43
movzx eax, word [rsp + 0x100]
cmp ecx, eax
jg 0x18011be32
test ecx, ecx
jle 0x18011b723
or rsi, qword [r15 + 8]
mov qword [rsp + 0x58], rsi
cmp ecx, eax
jge 0x18011b745
bt r9w, 0xb
mov rax, qword [rdi + 0x18]
mov r15, qword [rax + rbx*8]
mov qword [rsp + 0x88], r15
jb 0x18011bdf8
jmp 0x18011b755
mov r15, qword [rsp + 0x108]
mov qword [rsp + 0x88], r15
test dword [r15 + 0x38], 0x400
jne 0x18011be18
movzx eax, r9w
mov ecx, 0x80
and ax, cx
mov word [rsp + 0x60], ax
je 0x18011b77b
mov word [r15 + 0x1e], r14w
movzx eax, byte [r15 + 0x10]
mov ebp, r14d
imul rcx, rax, 0x68
mov rax, qword [r10 + 8]
mov eax, dword [rcx + rax + 0x4c]
mov dword [rsp + 0x64], eax
cmp dword [rsp + 0x50], r14d
jbe 0x18011b8f8
mov r12d, eax
mov eax, ebp
bt r11, rax
jb 0x18011b8db
mov edi, ebp
shl rdi, 5
mov r14d, ebp
mov rcx, qword [rdi + r13 + 8]
call fcn.1800e1b88
xor edx, edx
mov rbx, rax
test rax, rax
je 0x18011b8db
mov al, byte [rax]
add al, 0x59
test al, 0xfd
jne 0x18011b8db
cmp dword [rbx + 0x2c], r12d
jne 0x18011b8db
movzx eax, r8w
lea rcx, [r10 + 0x70]
movsx r8d, word [rbx + 0x30]
mov r9, rsi
mov qword [rsp + 0x28], rdx
not r9
mov edx, r12d
mov dword [rsp + 0x20], eax
call fcn.18010cb30
mov rsi, rax
xor eax, eax
test rsi, rsi
je 0x18011b8c3
lea r9d, [rax + 1]
cmp word [rsi + 0x14], r9w
jne 0x18011b846
movzx edx, word [r15 + 0x3c]
mov ecx, eax
test edx, edx
je 0x18011b842
mov r8, qword [r15 + 0x48]
movsxd rax, ecx
cmp rsi, qword [r8 + rax*8]
je 0x18011b840
add ecx, r9d
cmp ecx, edx
jl 0x18011b830
xor eax, eax
cmp ecx, edx
jge 0x18011b8c3
test byte [rsi + 0x14], 0x82
je 0x18011b8b3
cmp word [rbx + 0x30], ax
jl 0x18011b8b3
mov rbx, qword [rsp + 0xe0]
mov rdx, qword [rdi + r13 + 8]
mov rbx, qword [rbx]
mov rcx, rbx
call fcn.1800e0100
mov rdi, rax
test rax, rax
jne 0x18011b879
mov rax, qword [rbx]
mov rdi, qword [rax + 0x10]
mov rax, qword [rsi]
test dword [rax + 4], 0x400
je 0x18011b88f
mov rdx, qword [rax + 0x18]
mov r8, qword [rax + 0x10]
jmp 0x18011b897
mov rdx, qword [rax + 0x10]
mov r8, qword [rax + 0x18]
mov rcx, rbx
call fcn.1800d3d7c
test rax, rax
je 0x18011b8c3
mov rdx, qword [rax]
mov rcx, qword [rdi]
call fcn.1800f7df8
test eax, eax
jne 0x18011b8c3
mov r11, qword [rsp + 0x40]
bts r11, r14
mov qword [rsp + 0x40], r11
jmp 0x18011b8c8
mov r11, qword [rsp + 0x40]
mov r10, qword [rsp + 0xe0]
movzx r8d, word [rsp + 0x32]
mov rsi, qword [rsp + 0x58]
inc ebp
cmp ebp, dword [rsp + 0x50]
jl 0x18011b7a1
mov r12d, dword [rsp + 0x34]
xor r14d, r14d
movzx r9d, word [rsp + 0xf8]
test dword [r15 + 0x38], 0x1000
jne 0x18011bcfb
test dword [r15 + 0x38], 0x100
je 0x18011b927
mov ebx, dword [rsp + 0x34]
mov ebp, 1
movzx eax, bp
mov word [rsp + 0x4c], r14w
mov r13, r14
jmp 0x18011b974
mov r13, qword [r15 + 0x20]
test r13, r13
je 0x18011be71
test byte [r13 + 0x64], 4
jne 0x18011be71
movzx eax, word [r13 + 0x5e]
mov word [rsp + 0x4c], ax
movzx eax, word [r13 + 0x60]
cmp byte [r13 + 0x62], r14b
je 0x18011b968
test dword [r15 + 0x38], 0x8000
jne 0x18011b968
mov ebp, 1
mov bl, bpl
jmp 0x18011b970
mov bl, r14b
mov ebp, 1
mov dword [rsp + 0x34], ebx
movzx eax, ax
mov sil, r14b
mov byte [rsp + 0x39], r14b
mov edi, r14d
mov byte [rsp + 0x38], r14b
mov dword [rsp + 0x48], esi
mov dword [rsp + 0x68], eax
test eax, eax
je 0x18011bcee
movzx r10d, word [r15 + 0x18]
cmp edi, r10d
jge 0x18011b9fa
movzx eax, word [r15 + 0x3e]
cmp edi, eax
jl 0x18011b9fa
mov r8, qword [r15 + 0x48]
movsxd rax, edi
mov rcx, qword [r8 + rax*8]
movzx eax, word [rcx + 0x14]
test word [rsp + 0x32], ax
je 0x18011b9da
mov ecx, 0x180
test cx, ax
je 0x18011bcc2
mov bl, r14b
mov dword [rsp + 0x34], ebx
jmp 0x18011bcc2
test bpl, al
je 0x18011b9fa
mov r9, qword [rcx]
lea edx, [rdi + 1]
jmp 0x18011b9f5
movsxd rax, edx
mov rcx, qword [r8 + rax*8]
cmp qword [rcx], r9
je 0x18011ba32
add edx, ebp
cmp edx, r10d
jl 0x18011b9e7
mov r8b, bpl
test r13, r13
je 0x18011ba37
mov rax, qword [r13 + 8]
movsxd rcx, edi
movsx r14d, word [rax + rcx*2]
mov rax, qword [r13 + 0x38]
mov r12b, byte [rcx + rax]
mov rax, qword [r13 + 0x18]
and r12b, bpl
movsx ecx, word [rax + 0x34]
mov eax, 0xffffffff
cmp r14d, ecx
cmove r14d, eax
xor r9d, r9d
jmp 0x18011ba41
mov r8b, r14b
jmp 0x18011b9fd
or r14d, 0xffffffff
xor r9d, r9d
mov r12b, r9b
test bl, bl
je 0x18011ba7b
test r14d, r14d
js 0x18011ba6c
cmp edi, r10d
jl 0x18011ba7b
movsxd rax, r14d
lea rdx, [rax + rax*2]
mov rax, qword [r13 + 0x18]
mov rcx, qword [rax + 8]
test byte [rcx + rdx*8 + 8], 0xf
jne 0x18011ba7b
mov byte [rsp + 0x34], r9b
jmp 0x18011ba7b
cmp r14d, 0xfffffffe
movzx ebx, bl
cmove ebx, r9d
mov dword [rsp + 0x34], ebx
mov ebp, r9d
test r8b, r8b
je 0x18011bbc0
cmp ebp, dword [rsp + 0x50]
jge 0x18011bbbc
mov eax, ebp
bt r11, rax
jb 0x18011bbb1
mov rbx, qword [rsp + 0xe8]
movsxd rsi, ebp
shl rsi, 5
mov rcx, qword [rsi + rbx + 8]
call fcn.1800e1b88
mov rdx, rax
test rax, rax
je 0x18011bbb1
mov al, byte [rsp + 0xf8]
and al, 0xc0
neg al
sbb al, al
or r10d, 0xffffffff
and al, r8b
mov byte [rsp + 0x30], al
cmp r14d, r10d
jl 0x18011bb07
mov al, byte [rdx]
add al, 0x59
test al, 0xfd
jne 0x18011bbac
mov eax, dword [rsp + 0x64]
cmp dword [rdx + 0x2c], eax
jne 0x18011bbac
movsx eax, word [rdx + 0x30]
cmp eax, r14d
jne 0x18011bbac
jmp 0x18011bb55
mov rax, qword [r13 + 0x50]
movsxd rcx, edi
shl rcx, 5
mov r8, qword [rcx + rax + 8]
jmp 0x18011bb27
test dword [r8 + 4], 0x2000
je 0x18011bb2c
mov r8, qword [r8 + 0x10]
test r8, r8
jne 0x18011bb19
test dword [rdx + 4], 0x2000
je 0x18011bb3e
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x18011bb2c
mov r9d, dword [rsp + 0x64]
xor ecx, ecx
call fcn.1800e02c0
xor r9d, r9d
test eax, eax
jne 0x18011bba7
or r10d, 0xffffffff
cmp r14d, r10d
je 0x18011bc00
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov rbx, qword [rax]
mov rdx, qword [rsi + rdx + 8]
mov rcx, rbx
call fcn.1800e0100
mov rcx, rax
test rax, rax
jne 0x18011bb8d
mov rax, qword [rbx]
mov rcx, qword [rax + 0x10]
mov rdx, qword [r13 + 0x40]
mov rcx, qword [rcx]
movsxd rax, edi
mov rdx, qword [rdx + rax*8]
call fcn.1800f7df8
xor r9d, r9d
test eax, eax
je 0x18011bbf4
mov r11, qword [rsp + 0x40]
mov r8b, byte [rsp + 0x30]
inc ebp
test r8b, r8b
jne 0x18011ba87
mov esi, dword [rsp + 0x48]
movzx r9d, word [rsp + 0xf8]
xor r14d, r14d
test edi, edi
je 0x18011bbdd
movzx eax, word [rsp + 0x4c]
cmp edi, eax
jge 0x18011bcd0
mov r11, qword [rsp + 0x40]
mov r12b, r14b
mov dword [rsp + 0x34], r12d
mov ebp, 1
jmp 0x18011bcdf
mov rbx, qword [rsp + 0xe8]
or r10d, 0xffffffff
mov r8d, 1
cmp word [rsp + 0x60], r9w
je 0x18011bc17
lea eax, [r8 + rdi]
mov word [r15 + 0x1e], ax
movzx r9d, word [rsp + 0xf8]
test r9b, 0x40
jne 0x18011bc76
movsxd rax, ebp
xor edx, edx
shl rax, 5
mov cl, byte [rax + rbx + 0x18]
and cl, r8b
cmp byte [rsp + 0x39], dl
je 0x18011bc4f
xor r12b, byte [rsp + 0x38]
cmp r12b, cl
je 0x18011bc76
mov esi, dword [rsp + 0x48]
jmp 0x18011bbc9
mov dl, cl
xor dl, r12b
mov byte [rsp + 0x38], dl
je 0x18011bc71
mov rdx, qword [rsp + 0x110]
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rdx]
bts rcx, rax
mov qword [rdx], rcx
mov byte [rsp + 0x39], r8b
movsxd rax, ebp
shl rax, 5
test byte [rax + rbx + 0x18], 2
je 0x18011bc93
movzx eax, word [r15 + 0x18]
cmp edi, eax
jne 0x18011bc46
bts dword [r15 + 0x38], 0x13
mov esi, dword [rsp + 0x48]
cmp r14d, r10d
mov r11, qword [rsp + 0x40]
mov ebx, dword [rsp + 0x34]
movsxd rax, ebp
movzx esi, sil
cmove esi, r8d
bts r11, rax
xor r14d, r14d
mov dword [rsp + 0x48], esi
mov qword [rsp + 0x40], r11
lea ebp, [r14 + 1]
add edi, ebp
cmp edi, dword [rsp + 0x68]
jl 0x18011b997
jmp 0x18011bcda
mov r11, qword [rsp + 0x40]
mov ebp, 1
mov r12d, dword [rsp + 0x34]
test sil, sil
je 0x18011bcf3
mov r12b, bpl
mov dword [rsp + 0x34], r12d
jmp 0x18011bd09
mov r12d, dword [rsp + 0x34]
mov r13, qword [rsp + 0xe8]
mov ebp, 1
test r12b, r12b
je 0x18011bdd4
mov rdi, qword [rsp + 0x70]
mov ebx, r14d
or rdi, qword [r15 + 8]
mov qword [rsp + 0x70], rdi
cmp dword [rsp + 0x50], r14d
jbe 0x18011bdcc
mov rsi, qword [rsp + 0xe8]
mov rdi, r14
mov r12, qword [rsp + 0xe0]
add rsi, 8
mov r13d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x70]
mov eax, ebx
bt r11, rax
jb 0x18011bda5
mov rbp, qword [rsi]
lea rcx, [r12 + 0x258]
mov rdx, rbp
call fcn.18010c9c8
mov r14, rax
test rax, rax
jne 0x18011bd7b
xor r8d, r8d
lea edx, [rax + 1]
mov rcx, rbp
call fcn.1800b5348
test eax, eax
je 0x18011bd9b
mov r11, qword [rsp + 0x40]
mov rax, r15
not rax
mov ebp, 1
test r14, rax
jne 0x18011bda5
bts r11, rdi
mov qword [rsp + 0x40], r11
jmp 0x18011bda5
mov r11, qword [rsp + 0x40]
mov ebp, 1
add ebx, ebp
add rdi, rbp
add rsi, 0x20
cmp ebx, r13d
jl 0x18011bd46
mov r15, qword [rsp + 0x88]
xor r14d, r14d
mov r12d, dword [rsp + 0x34]
movzx r9d, word [rsp + 0xf8]
mov r13, qword [rsp + 0xe8]
mov ecx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x78]
mov r10, qword [rsp + 0xe0]
movzx r8d, word [rsp + 0x32]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0xf0]
add qword [rsp + 0x80], rbp
add ecx, ebp
mov dword [rsp + 0x54], ecx
test r12b, r12b
je 0x18011be40
mov rbx, qword [rsp + 0x80]
jmp 0x18011b6fd
cmp byte [r15 + 0x20], r14b
je 0x18011be32
mov eax, 0x280
and r9w, ax
mov eax, 0x80
cmp r9w, ax
jne 0x18011be45
test r12b, r12b
jne 0x18011be8b
movzx edx, word [rsp + 0x4e]
dec edx
jmp 0x18011be6d
cmp r11, rdx
jne 0x18011be32
mov al, byte [rsp + 0x4e]
jmp 0x18011be73
mov ecx, edx
mov rax, rbp
shl rax, cl
mov rcx, r14
sub rax, rbp
cmp edx, 0x40
cmovl rcx, rax
mov rax, rcx
and rax, r11
cmp rax, rcx
je 0x18011be87
sub edx, ebp
test edx, edx
jg 0x18011be4b
xor al, al
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov al, dl
jmp 0x18011be73
or eax, 0xffffffff
jmp 0x18011be73