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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
cmp byte [0x1800050c0], 0
mov r14, rdx
mov esi, ecx
jne 0x180002e10
mov ecx, 0x84c05e40
call fcn.180001000
mov qword [0x1800050b8], rax
mov r8, rax
test rax, rax
je 0x18000313e
movsxd rax, dword [rax + 0x3c]
cmp dword [rax + r8], 0x4550
jne 0x18000313e
mov ecx, dword [rax + r8 + 0x88]
add rcx, r8
mov edx, dword [rcx + 0x18]
mov dword [0x1800050b0], edx
mov r10d, dword [rcx + 0x20]
add r10, r8
mov qword [0x1800050a0], r10
mov r9d, dword [rcx + 0x1c]
add r9, r8
mov qword [0x180005098], r9
mov ecx, dword [rcx + 0x24]
add rcx, r8
mov qword [0x1800050a8], rcx
test edx, edx
je 0x18000313e
test r10, r10
je 0x18000313e
test r9, r9
je 0x18000313e
test rcx, rcx
je 0x18000313e
mov byte [0x1800050c0], 1
mov dword [r14 + 4], esi
test esi, esi
je 0x18000313e
xor ebp, ebp
cmp dword [0x1800050b0], ebp
mov edi, ebp
lea r15d, [rbp + 1]
jbe 0x180002ff8
mov rax, qword [0x1800050a0]
mov edx, edi
mov ecx, dword [rax + rdx*4]
mov rax, qword [0x1800050a8]
add rcx, qword [0x1800050b8]
movzx edx, word [rax + rdx*2]
mov rax, qword [0x180005098]
mov ebx, dword [rax + rdx*4]
add rbx, qword [0x1800050b8]
call fcn.1800013a0
cmp eax, esi
je 0x180002e77
inc edi
cmp edi, dword [0x1800050b0]
jb 0x180002e30
jmp 0x180002ff8
movzx eax, byte [rbx]
mov r9d, 0xff
cmp al, 0x4c
jne 0x180002ec3
cmp byte [rbx + 1], 0x8b
jne 0x180002f58
cmp byte [rbx + 2], 0xd1
jne 0x180002f58
cmp byte [rbx + 3], 0xb8
jne 0x180002f58
cmp byte [rbx + 6], bpl
jne 0x180002f58
cmp byte [rbx + 7], bpl
jne 0x180002f58
movzx ecx, byte [rbx + 5]
movzx eax, byte [rbx + 4]
jmp 0x180002ff0
cmp al, 0xe9
jne 0x180002f58
movzx ecx, r15w
nop
movzx r8d, cx
mov edx, r8d
shl edx, 5
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x180002f00
cmp byte [rdx + 1], 0x8b
jne 0x180002f00
cmp byte [rdx + 2], 0xd1
jne 0x180002f00
cmp byte [rdx + 3], 0xb8
jne 0x180002f00
cmp byte [rdx + 6], bpl
jne 0x180002f00
cmp byte [rdx + 7], bpl
je 0x180002f3c
mov eax, r8d
neg eax
shl eax, 5
movsxd rdx, eax
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x180002f31
cmp byte [rdx + 1], 0x8b
jne 0x180002f31
cmp byte [rdx + 2], 0xd1
jne 0x180002f31
cmp byte [rdx + 3], 0xb8
jne 0x180002f31
cmp byte [rdx + 6], bpl
jne 0x180002f31
cmp byte [rdx + 7], bpl
je 0x180002f45
inc cx
cmp cx, r9w
jbe 0x180002ed0
jmp 0x180002f58
movzx eax, byte [rdx + 4]
sub eax, r8d
jmp 0x180002f4c
movzx eax, byte [rdx + 4]
add eax, r8d
movzx ecx, byte [rdx + 5]
shl ecx, 8
or ecx, eax
mov dword [r14], ecx
cmp byte [rbx + 3], 0xe9
jne 0x180002ff8
movzx ecx, r15w
nop word [rax + rax]
movzx r8d, cx
mov edx, r8d
shl edx, 5
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x180002fa0
cmp byte [rdx + 1], 0x8b
jne 0x180002fa0
cmp byte [rdx + 2], 0xd1
jne 0x180002fa0
cmp byte [rdx + 3], 0xb8
jne 0x180002fa0
cmp byte [rdx + 6], bpl
jne 0x180002fa0
cmp byte [rdx + 7], bpl
je 0x180002fdc
mov eax, r8d
neg eax
shl eax, 5
movsxd rdx, eax
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x180002fd1
cmp byte [rdx + 1], 0x8b
jne 0x180002fd1
cmp byte [rdx + 2], 0xd1
jne 0x180002fd1
cmp byte [rdx + 3], 0xb8
jne 0x180002fd1
cmp byte [rdx + 6], bpl
jne 0x180002fd1
cmp byte [rdx + 7], bpl
je 0x180002fe5
inc cx
cmp cx, r9w
jbe 0x180002f70
jmp 0x180002ff8
movzx eax, byte [rdx + 4]
sub eax, r8d
jmp 0x180002fec
movzx eax, byte [rdx + 4]
add eax, r8d
movzx ecx, byte [rdx + 5]
shl ecx, 8
or ecx, eax
mov dword [r14], ecx
cmp dword [r14], ebp
je 0x18000313e
call fcn.180001450
mov edi, eax
mov ebx, ebp
and edi, 0xf
cmp byte [0x1800050f0], bl
jne 0x1800030b2
mov ecx, 0xa1cab71e
call fcn.180001000
mov qword [0x1800050e8], rax
mov rdx, rax
test rax, rax
je 0x18000313a
movsxd rax, dword [rax + 0x3c]
cmp dword [rax + rdx], 0x4550
jne 0x18000313a
mov ecx, dword [rax + rdx + 0x88]
add rcx, rdx
mov r9d, dword [rcx + 0x18]
mov dword [0x1800050e0], r9d
mov r8d, dword [rcx + 0x20]
add r8, rdx
mov qword [0x1800050d0], r8
mov r10d, dword [rcx + 0x1c]
add r10, rdx
mov qword [0x1800050c8], r10
mov ecx, dword [rcx + 0x24]
add rcx, rdx
mov qword [0x1800050d8], rcx
test r9d, r9d
je 0x18000313a
test r8, r8
je 0x18000313a
test r10, r10
je 0x18000313a
test rcx, rcx
je 0x18000313a
mov byte [0x1800050f0], r15b
jmp 0x1800030b9
mov r9d, dword [0x1800050e0]
mov r8d, ebp
test r9d, r9d
je 0x18000313a
mov rax, qword [0x1800050d8]
mov ecx, r8d
movzx edx, word [rax + rcx*2]
mov rax, qword [0x1800050c8]
mov r9d, dword [rax + rdx*4]
mov edx, ebp
add r9, qword [0x1800050e8]
mov rax, r9
nop word [rax + rax]
movzx ecx, word [0x180005008]
xor cx, 0x25
cmp word [rax], cx
jne 0x18000310c
cmp byte [rax + 2], 0xc3
jne 0x18000310c
cmp ebx, edi
je 0x180003118
inc ebx
inc edx
inc rax
cmp edx, 0x20
jb 0x1800030f0
jmp 0x180003121
mov eax, edx
add rax, r9
mov qword [r14 + 8], rax
cmp qword [r14 + 8], rbp
jne 0x180003137
inc r8d
cmp r8d, dword [0x1800050e0]
jb 0x1800030c1
mov eax, ebp
jmp 0x180003140
mov ebp, r15d
mov eax, ebp
jmp 0x180003140
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret