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

Disassembly:
mov word [rsp + 0x20], r9w
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push r13
push r14
sub rsp, 0x100
movzx ebp, word [rsp + 0x140]
xor eax, eax
mov r13, r8
mov r14, rdx
mov rdx, rcx
mov r11d, eax
mov r8d, eax
mov qword [rsp + 0x38], rax
test bp, bp
je 0x1800b1930
mov rax, qword [rcx]
mov r10, qword [rax]
test byte [r10 + 0x60], 0x40
je 0x1800b1930
xor al, al
add rsp, 0x100
pop r14
pop r13
pop rbp
ret
mov qword [rsp + 0xe0], r12
movzx r12d, word [r14]
mov word [rsp + 0x70], r12w
cmp r12w, 0x3f
jbe 0x1800b1950
xor al, al
jmp 0x1800b22e1
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xe8], rdi
mov qword [rsp + 0xd8], r15
movzx r15d, r12w
xor r12d, r12d
mov ecx, r15d
mov ebx, 1
mov al, 1
shl rbx, cl
mov ecx, 0x803
mov r10d, 0x182
dec rbx
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x4c], r15d
mov qword [rsp + 0x88], r12
mov esi, r12d
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x80], rbx
mov dword [rsp + 0x44], r10d
test cx, r9w
je 0x1800b19c9
mov r10d, 0x183
mov dword [rsp + 0x44], r10d
mov rcx, r12
mov edi, r12d
mov dword [rsp + 0x6c], r12d
mov qword [rsp + 0x78], rcx
mov r10d, dword [rsp + 0x44]
cmp r8, rbx
jae 0x1800b2277
movzx eax, bp
cmp edi, eax
jg 0x1800b2270
test edi, edi
jle 0x1800b19ff
or rsi, qword [r11 + 8]
mov qword [rsp + 0x58], rsi
cmp edi, eax
jge 0x1800b1a21
mov rax, qword [r13 + 0x18]
mov rdi, qword [rax + rcx*8]
mov eax, 0x800
mov qword [rsp + 0x60], rdi
test ax, r9w
jne 0x1800b2230
jmp 0x1800b1a2e
mov rdi, qword [rsp + 0x148]
mov qword [rsp + 0x60], rdi
test dword [rdi + 0x38], 0x400
jne 0x1800b2256
movzx eax, r9w
mov ecx, pe_nt_image_headers64
and ax, cx
mov word [rsp + 0x68], ax
je 0x1800b1a53
mov word [rdi + 0x1e], r12w
movzx ecx, byte [rdi + 0x10]
mov rax, qword [rdx + 8]
mov r13d, r12d
imul rcx, rcx, 0x68
mov ebx, dword [rcx + rax + 0x4c]
mov dword [rsp + 0x50], ebx
test r15d, r15d
jle 0x1800b1c01
lea r12, [r14 + 8]
mov eax, 1
mov r14d, ebx
nop
mov ecx, r13d
mov rbp, rax
shl rbp, cl
test r8, rbp
jne 0x1800b1bd0
mov rbx, qword [r12]
test rbx, rbx
je 0x1800b1bd0
nop
mov eax, dword [rbx + 4]
test eax, 0x82000
je 0x1800b1ac8
bt eax, 0x13
jae 0x1800b1aba
mov rax, qword [rbx + 0x20]
mov rbx, qword [rax + 8]
jmp 0x1800b1abe
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x1800b1aa0
jmp 0x1800b1bcb
test rbx, rbx
je 0x1800b1bcb
movzx eax, byte [rbx]
cmp al, 0xa7
je 0x1800b1ae0
cmp al, 0xa9
jne 0x1800b1bcb
cmp dword [rbx + 0x2c], r14d
jne 0x1800b1bcb
movsx r8d, word [rbx + 0x30]
lea rcx, [rdx + 0x70]
movzx eax, r10w
mov r9, rsi
mov edx, r14d
mov qword [rsp + 0x28], 0
not r9
mov dword [rsp + 0x20], eax
call fcn.1800abfb0
mov rsi, rax
test rax, rax
je 0x1800b1bb9
movzx r9d, word [rax + 0x14]
cmp r9w, 1
jne 0x1800b1b58
movzx r8d, word [rdi + 0x3c]
xor ecx, ecx
test r8d, r8d
jle 0x1800b1b53
mov rdx, qword [rdi + 0x48]
nop word [rax + rax]
movsxd rax, ecx
cmp rsi, qword [rdx + rax*8]
je 0x1800b1b53
movzx eax, word [rdi + 0x3c]
inc ecx
cmp ecx, eax
jl 0x1800b1b40
cmp ecx, r8d
jge 0x1800b1bb9
test r9b, 0x82
je 0x1800b1baa
cmp word [rbx + 0x30], 0
jl 0x1800b1baa
mov rbx, qword [rsp + 0x120]
mov rdx, qword [r12]
mov rbx, qword [rbx]
mov rcx, rbx
call fcn.180050120
mov rdi, rax
test rax, rax
jne 0x1800b1b8b
mov rax, qword [rbx]
mov rdi, qword [rax + 0x10]
mov rdx, qword [rsi]
mov rcx, rbx
call fcn.180050590
test rax, rax
je 0x1800b1bb9
mov rdx, qword [rax]
mov rcx, qword [rdi]
call fcn.18000ff90
test eax, eax
jne 0x1800b1bb9
mov r8, qword [rsp + 0x38]
or r8, rbp
mov qword [rsp + 0x38], r8
jmp 0x1800b1bbe
mov r8, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x58]
mov eax, 1
mov rdi, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x44]
inc r13d
add r12, 0x20
cmp r13d, r15d
jl 0x1800b1a80
movzx r9d, word [rsp + 0x138]
mov ebx, r14d
mov r14, qword [rsp + 0x128]
xor r12d, r12d
mov eax, dword [rdi + 0x38]
bt eax, 0xc
jb 0x1800b2087
bt eax, 8
jae 0x1800b1c28
mov esi, dword [rsp + 0x30]
mov r15, r12
mov word [rsp + 0x48], r12w
mov ecx, 1
jmp 0x1800b1c68
mov r15, qword [rdi + 0x20]
test r15, r15
je 0x1800b22b6
test byte [r15 + 0x64], 4
jne 0x1800b22b6
cmp byte [r15 + 0x62], 0
movzx ecx, word [r15 + 0x5e]
mov word [rsp + 0x48], cx
movzx ecx, word [r15 + 0x60]
je 0x1800b1c61
bt eax, 0xf
jb 0x1800b1c61
mov sil, 1
jmp 0x1800b1c64
xor sil, sil
mov dword [rsp + 0x30], esi
xor al, al
xor r11b, r11b
mov r13d, r12d
mov byte [rsp + 0x35], al
mov byte [rsp + 0x34], al
movzx eax, cx
mov dword [rsp + 0x40], r11d
mov dword [rsp + 0x74], eax
test eax, eax
jle 0x1800b2082
nop dword [rax]
movzx r10d, word [rdi + 0x18]
mov r12b, 1
cmp r13d, r10d
jge 0x1800b1d0c
movzx eax, word [rdi + 0x3e]
cmp r13d, eax
jl 0x1800b1d0c
mov r9, qword [rdi + 0x48]
mov edx, dword [rsp + 0x44]
movsxd rax, r13d
mov rcx, qword [r9 + rax*8]
movzx eax, word [rcx + 0x14]
test dx, ax
je 0x1800b1ce1
movzx r9d, word [rsp + 0x138]
mov ecx, 0x180
test cx, ax
je 0x1800b2023
xor sil, sil
mov dword [rsp + 0x30], esi
jmp 0x1800b2023
test al, 1
je 0x1800b1d0c
mov r8, qword [rcx]
lea edx, [r13 + 1]
cmp edx, r10d
jge 0x1800b1d0c
movsxd rax, edx
mov rcx, qword [r9 + rax*8]
cmp qword [rcx], r8
je 0x1800b1d09
movzx eax, word [rdi + 0x18]
inc edx
cmp edx, eax
jl 0x1800b1cf1
jmp 0x1800b1d0c
xor r12b, r12b
test r15, r15
je 0x1800b1d3a
mov rax, qword [r15 + 8]
movsxd rcx, r13d
movsx ebp, word [rax + rcx*2]
mov rax, qword [r15 + 0x38]
movzx r14d, byte [rcx + rax]
mov rax, qword [r15 + 0x18]
movsx ecx, word [rax + 0x34]
and r14b, 1
cmp ebp, ecx
jne 0x1800b1d40
or ebp, 0xffffffff
jmp 0x1800b1d40
or ebp, 0xffffffff
xor r14b, r14b
test sil, sil
je 0x1800b1d95
test ebp, ebp
js 0x1800b1d81
cmp r13d, r10d
jl 0x1800b1d81
movsxd rax, ebp
mov r8d, 0
movzx esi, sil
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x18]
mov rcx, qword [rax + 8]
test byte [rcx + rdx*8 + 8], 0xf
cmove esi, r8d
cmp ebp, 0xfffffffe
movzx eax, sil
cmove eax, r8d
mov byte [rsp + 0x30], al
jmp 0x1800b1d98
xor r8d, r8d
movzx eax, sil
cmp ebp, 0xfffffffe
cmove eax, r8d
mov byte [rsp + 0x30], al
jmp 0x1800b1d98
xor r8d, r8d
mov esi, r8d
test r12b, r12b
je 0x1800b2047
cmp esi, dword [rsp + 0x4c]
jge 0x1800b203d
mov rcx, qword [rsp + 0x38]
mov eax, esi
bt rcx, rax
jb 0x1800b1f8b
mov rcx, qword [rsp + 0x128]
movsxd rdi, esi
shl rdi, 5
mov rdx, qword [rdi + rcx + 8]
test rdx, rdx
je 0x1800b1f8b
nop dword [rax]
mov eax, dword [rdx + 4]
test eax, 0x82000
je 0x1800b1e08
bt eax, 0x13
jae 0x1800b1dfa
mov rax, qword [rdx + 0x20]
mov rdx, qword [rax + 8]
jmp 0x1800b1dfe
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x1800b1de0
jmp 0x1800b1f8b
test rdx, rdx
je 0x1800b1f8b
test byte [rsp + 0x138], 0xc0
movzx r12d, r12b
cmove r12d, r8d
cmp ebp, 0xffffffff
jl 0x1800b1e4c
movzx eax, byte [rdx]
cmp al, 0xa7
je 0x1800b1e35
cmp al, 0xa9
jne 0x1800b1f8b
cmp dword [rdx + 0x2c], ebx
jne 0x1800b1f8b
movsx eax, word [rdx + 0x30]
cmp eax, ebp
jne 0x1800b1f8b
jmp 0x1800b1ec2
mov rax, qword [r15 + 0x50]
movsxd rcx, r13d
shl rcx, 5
mov r8, qword [rcx + rax + 8]
test r8, r8
je 0x1800b1e85
mov eax, dword [r8 + 4]
test eax, 0x82000
je 0x1800b1e85
bt eax, 0x13
jae 0x1800b1e7c
mov rax, qword [r8 + 0x20]
mov r8, qword [rax + 8]
jmp 0x1800b1e80
mov r8, qword [r8 + 0x10]
test r8, r8
jne 0x1800b1e61
mov eax, dword [rdx + 4]
test eax, 0x82000
je 0x1800b1ea8
bt eax, 0x13
jae 0x1800b1e9f
mov rax, qword [rdx + 0x20]
mov rdx, qword [rax + 8]
jmp 0x1800b1ea3
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x1800b1e85
mov r9d, ebx
xor ecx, ecx
call fcn.18005a930
test eax, eax
jne 0x1800b1f88
mov rcx, qword [rsp + 0x128]
cmp ebp, 0xffffffff
je 0x1800b1f11
mov rax, qword [rsp + 0x120]
mov rdx, qword [rdi + rcx + 8]
mov rbx, qword [rax]
mov rcx, rbx
call fcn.180050120
test rax, rax
jne 0x1800b1eeb
mov rax, qword [rbx]
mov rax, qword [rax + 0x10]
mov r8, qword [rax]
mov rax, qword [r15 + 0x40]
movsxd rcx, r13d
mov r9, qword [rax + rcx*8]
sub r9, r8
nop dword [rax]
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x1800b1f6b
test ecx, ecx
jne 0x1800b1f80
cmp word [rsp + 0x68], 0
mov rdi, qword [rsp + 0x60]
je 0x1800b1f26
lea eax, [r13 + 1]
mov word [rdi + 0x1e], ax
movzx r9d, word [rsp + 0x138]
test r9b, 0x40
jne 0x1800b1fcc
mov rcx, qword [rsp + 0x128]
movsxd rax, esi
shl rax, 5
cmp byte [rsp + 0x35], 0
je 0x1800b1f9f
movzx ecx, byte [rax + rcx + 0x18]
xor r14b, byte [rsp + 0x34]
and cl, 1
cmp r14b, cl
je 0x1800b1fcc
mov r11d, dword [rsp + 0x40]
jmp 0x1800b2050
lea r10, [0x180144c60]
movzx edx, byte [rax + r10]
movzx ecx, byte [rcx + r10]
sub ecx, edx
jne 0x1800b1f88
inc r8
jmp 0x1800b1f00
xor r8d, r8d
inc esi
test r12b, r12b
je 0x1800b203d
mov ebx, dword [rsp + 0x50]
jmp 0x1800b1da4
movzx ebx, byte [rax + rcx + 0x18]
and bl, 1
xor bl, r14b
mov byte [rsp + 0x34], bl
je 0x1800b1fc7
mov ecx, dword [rsp + 0x6c]
mov eax, 1
shl rax, cl
mov rcx, qword [rsp + 0x150]
or qword [rcx], rax
mov byte [rsp + 0x35], 1
mov r14, qword [rsp + 0x128]
movsxd rax, esi
shl rax, 5
test byte [rax + r14 + 0x18], 2
je 0x1800b1ff3
movzx eax, word [rdi + 0x18]
cmp r13d, eax
jne 0x1800b2036
or dword [rdi + 0x38], 0x80000
mov r11d, dword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp ebp, 0xffffffff
mov eax, 1
mov ecx, esi
mov esi, dword [rsp + 0x30]
movzx r11d, r11b
cmove r11d, eax
shl rax, cl
or r8, rax
mov dword [rsp + 0x40], r11d
mov qword [rsp + 0x38], r8
inc r13d
cmp r13d, dword [rsp + 0x74]
jge 0x1800b2071
mov ebx, dword [rsp + 0x50]
jmp 0x1800b1c90
mov r11d, dword [rsp + 0x40]
jmp 0x1800b2058
mov rdi, qword [rsp + 0x60]
mov r11d, dword [rsp + 0x40]
movzx r9d, word [rsp + 0x138]
mov r14, qword [rsp + 0x128]
test r13d, r13d
je 0x1800b2067
movzx eax, word [rsp + 0x48]
cmp r13d, eax
jge 0x1800b206c
mov byte [rsp + 0x30], 0
mov r8, qword [rsp + 0x38]
mov r15d, dword [rsp + 0x4c]
test r11b, r11b
je 0x1800b2087
mov byte [rsp + 0x30], 1
jmp 0x1800b2092
mov r15d, dword [rsp + 0x4c]
cmp byte [rsp + 0x30], 0
je 0x1800b2208
mov r13, qword [rsp + 0x88]
xor r10d, r10d
or r13, qword [rdi + 8]
mov ebp, r10d
mov qword [rsp + 0x88], r13
test r15d, r15d
jle 0x1800b2208
lea r12, [r14 + 8]
mov r14, qword [rsp + 0x120]
mov r9d, 1
nop word [rax + rax]
mov ecx, ebp
mov rsi, r9
shl rsi, cl
test r8, rsi
jne 0x1800b21e8
mov rdi, qword [r12]
lea rax, [r14 + 0x258]
test rdi, rdi
je 0x1800b2135
cmp byte [rdi], 0xa7
jne 0x1800b21b3
test byte [rdi + 4], 0x20
jne 0x1800b21b3
mov r8d, dword [rdi + 0x2c]
cmp dword [rax + 8], r8d
jne 0x1800b2113
mov rbx, r9
jmp 0x1800b2138
mov edx, dword [rax + 4]
mov ecx, r9d
cmp edx, 1
jle 0x1800b2135
add rax, 0xc
cmp dword [rax], r8d
je 0x1800b21ab
inc ecx
add rax, 4
cmp ecx, edx
jl 0x1800b2122
mov rbx, r10
test rbx, rbx
jne 0x1800b218b
lea rax, [fcn.1800535f0]
mov word [rsp + 0xbc], r9w
mov dword [rsp + 0xc0], r10d
mov qword [rsp + 0xa0], rax
lea rax, [0x180053410]
mov qword [rsp + 0xa8], rax
test rdi, rdi
je 0x1800b218b
lea rcx, [rsp + 0x98]
mov rdx, rdi
call fcn.18004c270
cmp word [rsp + 0xbc], bx
je 0x1800b21da
mov r8, qword [rsp + 0x38]
mov rax, r13
mov r9d, 1
not rax
test rbx, rax
jne 0x1800b21e5
or r8, rsi
mov qword [rsp + 0x38], r8
jmp 0x1800b21e5
mov rbx, r9
shl rbx, cl
jmp 0x1800b2138
test dword [rdi + 4], 0x810000
jne 0x1800b2135
mov rdx, rdi
mov rcx, rax
call fcn.1800ab4e0
xor r10d, r10d
mov rbx, rax
lea r9d, [r10 + 1]
jmp 0x1800b2138
mov r8, qword [rsp + 0x38]
mov r9d, 1
xor r10d, r10d
inc ebp
add r12, 0x20
cmp ebp, r15d
jl 0x1800b20d0
mov r14, qword [rsp + 0x128]
movzx r9d, word [rsp + 0x138]
mov rdx, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
movzx ebp, word [rsp + 0x140]
mov r13, qword [rsp + 0x130]
xor r12d, r12d
mov edi, dword [rsp + 0x6c]
mov eax, dword [rsp + 0x30]
inc qword [rsp + 0x78]
inc edi
mov dword [rsp + 0x6c], edi
test al, al
je 0x1800b2274
mov r11, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x78]
jmp 0x1800b19d9
cmp byte [rdi + 0x20], 0
je 0x1800b2270
mov eax, 0x280
and r9w, ax
mov eax, pe_nt_image_headers64
cmp r9w, ax
jne 0x1800b2279
mov eax, dword [rsp + 0x30]
cmp r8, rbx
jne 0x1800b2280
movzx eax, byte [rsp + 0x70]
jmp 0x1800b22c1
test al, al
jne 0x1800b22bf
lea ecx, [r15 - 1]
test ecx, ecx
jle 0x1800b22b6
nop dword [rax]
cmp ecx, 0x40
jge 0x1800b22a2
mov edx, 1
shl rdx, cl
dec rdx
jmp 0x1800b22a5
mov rdx, r12
mov rax, rdx
and rax, r8
cmp rax, rdx
je 0x1800b22ba
dec ecx
test ecx, ecx
jg 0x1800b2290
xor al, al
jmp 0x1800b22c1
movzx eax, cl
jmp 0x1800b22c1
mov al, 0xff
mov rbx, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xf0]
mov r15, qword [rsp + 0xd8]
mov r12, qword [rsp + 0xe0]
add rsp, 0x100
pop r14
pop r13
pop rbp
ret