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

Disassembly:
mov qword [rsp + 0x20], rbx
mov byte [rsp + 0x10], dl
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r14b, dl
mov rdi, rcx
xor r15d, r15d
mov byte [rcx + 0x1ec4], r15b
mov byte [rcx + 0x1ed0], r15b
call fcn.140019ed0
test al, al
je 0x1400028ea
lea rdx, [rdi + 0x40]
mov r8, rdx
lea ecx, [r15 + 0x3c]
call fcn.140001678
xor al, al
mov rbx, qword [rsp + 0x98]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea r12, [rdi + 0x1630]
mov rax, qword [rdi]
mov ebp, 7
mov r8d, ebp
mov rdx, r12
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [0x140057518]
cmp eax, ebp
jne 0x1400028d0
mov qword [rdi + 0x1ec8], r15
mov edx, ebp
mov rcx, r12
call fcn.140002d6c
test eax, eax
je 0x14000295f
mov dword [rdi + 0x1eb8], eax
cmp eax, 1
jne 0x140002b2f
mov rbx, qword [rdi]
mov rcx, rdi
mov rax, qword [rbx + 0x28]
call qword [0x140057518]
sub rax, rbp
xor r8d, r8d
mov rdx, rax
mov rcx, rdi
mov rax, qword [rbx + 0x20]
call qword [0x140057518]
jmp 0x140002b2f
mov r14d, 0x200000
mov ecx, r14d
call fcn.1400010b0
mov rbx, rax
mov qword [rsp + 0x20], rax
lea rsi, [rax + 0x200000]
mov qword [rsp + 0x30], rsi
mov r8d, r14d
xor edx, edx
mov rcx, rax
call fcn.1400430a0
mov qword [rsp + 0x28], rsi
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x28]
call qword [0x140057518]
mov qword [rsp + 0x90], rax
mov rcx, qword [rdi]
mov rax, qword [rcx + 0x18]
lea r8d, [r14 - 0x10]
mov rdx, rbx
mov rcx, rdi
call qword [0x140057518]
movsxd r13, eax
test eax, eax
jle 0x140002aa2
mov qword [rsp + 0x80], r13
xor r14d, r14d
mov rax, r13
cmp byte [rbx + r14], 0x52
jne 0x140002a46
movsxd rcx, r15d
add rcx, rbx
movsxd rdx, r13d
call fcn.140002d6c
test eax, eax
je 0x140002a3e
mov dword [rdi + 0x1eb8], eax
cmp eax, 1
jne 0x140002a56
test r15d, r15d
jle 0x140002a56
mov rax, qword [rsp + 0x90]
movsxd rcx, eax
cmp rcx, 0x1c
jge 0x140002a56
cmp qword [rsp + 0x80], 0x1f
jle 0x140002a56
mov rax, rbx
sub rax, rcx
cmp byte [rax + 0x1c], 0x52
jne 0x140002a3e
cmp byte [rax + 0x1d], 0x53
jne 0x140002a3e
cmp byte [rax + 0x1e], 0x46
jne 0x140002a3e
cmp byte [rax + 0x1f], 0x58
je 0x140002a56
mov rax, qword [rsp + 0x80]
inc r15d
dec r13d
inc r14
cmp r14, rax
jge 0x140002aa2
jmp 0x1400029db
mov rax, qword [rsp + 0x90]
add eax, r15d
movsxd rdx, eax
mov qword [rdi + 0x1ec8], rdx
mov rax, qword [rdi]
xor r8d, r8d
mov rcx, rdi
mov rax, qword [rax + 0x20]
call qword [0x140057518]
mov eax, dword [rdi + 0x1eb8]
sub eax, 2
cmp eax, 1
ja 0x140002aa2
mov rax, qword [rdi]
mov r8, rbp
mov rdx, r12
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [0x140057518]
xor r15d, r15d
cmp qword [rdi + 0x1ec8], r15
jne 0x140002aef
test rbx, rbx
je 0x1400028d0
sub rsi, rbx
cmp rsi, 0x1000
jb 0x140002adf
add rsi, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x140002d55
mov rbx, rcx
mov rdx, rsi
mov rcx, rbx
call fcn.140040cf4
jmp 0x1400028d0
test rbx, rbx
je 0x140002b27
sub rsi, rbx
cmp rsi, 0x1000
jb 0x140002b1c
add rsi, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x140002d55
mov rbx, rcx
mov rdx, rsi
mov rcx, rbx
call fcn.140040cf4
mov r14b, byte [rsp + 0x88]
mov eax, dword [rdi + 0x1eb8]
cmp eax, 4
jne 0x140002b4b
lea rdx, [rdi + 0x40]
lea ecx, [rax + 0x39]
call fcn.1400015e4
jmp 0x1400028d0
cmp eax, 3
jne 0x140002b85
lea rbx, [rdi + 0x1637]
mov rax, qword [rdi]
mov r8d, 1
mov rdx, rbx
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [0x140057518]
cmp eax, 1
jne 0x1400028d0
cmp byte [rbx], r15b
jne 0x1400028d0
lea ebp, [rax + 7]
mov dword [rdi + 0x1638], ebp
mov bl, r15b
mov rcx, rdi
call fcn.140006964
test rax, rax
setne sil
test rax, rax
je 0x140002bd7
mov rax, qword [rdi]
xor r8d, r8d
mov rdx, qword [rdi + 0x1eb0]
mov rcx, rdi
mov rax, qword [rax + 0x20]
call qword [0x140057518]
mov eax, dword [rdi + 0xb9c]
cmp eax, 1
je 0x140002bd5
cmp byte [rdi + 0xba0], r15b
je 0x140002b8e
cmp eax, 4
jne 0x140002b8e
mov bl, 1
mov al, byte [rdi + 0x1ed1]
test al, al
je 0x140002bea
test r14b, r14b
je 0x1400028d0
cmp byte [rdi + 0x1ed0], r15b
jne 0x140002bf7
test bl, bl
jne 0x140002c12
test al, al
jne 0x140002c09
lea rdx, [rdi + 0x40]
mov ecx, 0x1b
call fcn.1400015e4
test r14b, r14b
je 0x1400028d0
mov al, byte [rdi + 0x165c]
mov byte [rdi + 0x1ebe], al
test sil, sil
je 0x140002d16
cmp byte [rdi + 0xba0], r15b
je 0x140002c3d
cmp byte [rdi + 0x1ec4], r15b
jne 0x140002d16
cmp dword [rdi + 0x14], 1
je 0x140002d16
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x28]
call qword [0x140057518]
mov rbx, rax
mov rsi, qword [rdi + 0x1ea8]
mov rbp, qword [rdi + 0x1eb0]
mov r14d, dword [rdi + 0xb9c]
jmp 0x140002cbf
mov eax, dword [rdi + 0xb9c]
cmp eax, 3
jne 0x140002c9b
cmp byte [rdi + 0x1ebd], r15b
je 0x140002c90
cmp byte [rdi + 0x1b40], r15b
mov al, 1
je 0x140002c93
mov al, r15b
mov byte [rdi + 0x1ec1], al
jmp 0x140002ca5
cmp eax, 2
je 0x140002cce
cmp eax, 5
je 0x140002ceb
mov rax, qword [rdi]
xor r8d, r8d
mov rdx, qword [rdi + 0x1eb0]
mov rcx, rdi
mov rax, qword [rax + 0x20]
call qword [0x140057518]
mov rcx, rdi
call fcn.140006964
test rax, rax
jne 0x140002c71
jmp 0x140002ceb
cmp byte [rdi + 0x1ebd], r15b
je 0x140002ce2
cmp byte [rdi + 0x17a0], r15b
mov al, 1
je 0x140002ce5
mov al, r15b
mov byte [rdi + 0x1ec1], al
mov qword [rdi + 0x1ea8], rsi
mov qword [rdi + 0x1eb0], rbp
mov dword [rdi + 0xb9c], r14d
mov rax, qword [rdi]
xor r8d, r8d
mov rdx, rbx
mov rcx, rdi
mov rax, qword [rax + 0x20]
call qword [0x140057518]
cmp byte [rdi + 0x1ebd], r15b
je 0x140002d28
cmp byte [rdi + 0x1ec1], r15b
je 0x140002d4e
lea r8, [rdi + 0x40]
lea rcx, [rdi + 0x1f08]
cmp rcx, r8
je 0x140002d4e
mov rdx, r8
cmp qword [r8 + 0x18], 8
jb 0x140002d45
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
call fcn.1400032dc
mov al, 1
jmp 0x1400028d2
call fcn.140046224
int3