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

Disassembly:
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
push rbx
push rbp
push rsi
push r13
push r14
sub rsp, 0x20
mov ebx, dword [rsp + 0x88]
xor eax, eax
mov r13d, r9d
mov ebp, ecx
cmp ebx, 3
je 0x14031aea2
xor ecx, ecx
mov qword [rsp], rcx
cmp ebx, 6
jne 0x14031aead
mov eax, 1
mov ecx, eax
mov qword [rsp], rax
mov rsi, qword [rsp + 0x98]
test eax, eax
mov r14, qword [rsp + 0xa0]
mov r10, qword [rsi]
mov r9, qword [r14]
mov rdx, r10
cmove rdx, r9
mov qword [rsp + 0x98], rdx
test rdx, rdx
je 0x14031b1ca
mov qword [rsp + 0x50], rdi
test eax, eax
mov edi, dword [rsp + 0x80]
mov r11, r9
mov qword [rsp + 0x18], r12
cmove r11, r10
mov r12d, dword [rsp + 0x78]
mov qword [rsp + 0x10], r15
mov r15d, dword [rsp + 0x90]
nop dword [rax]
mov rax, r11
mov r8, r11
test r11, r11
je 0x14031b1a9
test rcx, rcx
je 0x14031af2a
mov r11, qword [r11 + 0x18]
jmp 0x14031af2e
mov r11, qword [r11 + 0x10]
mov rdx, qword [rax]
test r15d, r15d
js 0x14031af45
cmp r15d, dword [rdx + 0x44]
jne 0x14031b197
jmp 0x14031afcb
test ebp, ebp
je 0x14031af52
cmp ebp, dword [rdx + 0x18]
jne 0x14031b197
mov ecx, dword [rsp + 0x58]
test ecx, ecx
je 0x14031af63
test dword [rdx + 0x1c], ecx
je 0x14031b197
mov ecx, dword [rsp + 0x60]
test ecx, ecx
je 0x14031af74
test dword [rdx + 0x20], ecx
je 0x14031b197
test r13d, r13d
je 0x14031af83
test dword [rdx + 0x24], r13d
je 0x14031b197
mov ecx, dword [rsp + 0x70]
test ecx, ecx
je 0x14031af94
test dword [rdx + 0x28], ecx
je 0x14031b197
test r12d, r12d
je 0x14031afa3
cmp r12d, dword [rdx + 0x2c]
jne 0x14031b197
test dil, 0x1f
je 0x14031afb7
mov ecx, dword [rdx + 0x3c]
and ecx, edi
test cl, 0x1f
je 0x14031b197
test dil, 0x20
je 0x14031afcb
mov ecx, dword [rdx + 0x3c]
and ecx, edi
test cl, 0x20
je 0x14031b197
cmp ebx, 1
jne 0x14031b029
cmp dword [rax + 8], 0
jne 0x14031b197
cmp rax, r9
je 0x14031b01d
cmp rax, r10
jne 0x14031afe8
mov r10, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x14031aff9
mov rcx, qword [rax + 0x10]
mov qword [rdx + 0x10], rcx
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14031b00a
mov rcx, qword [rax + 0x18]
mov qword [rdx + 0x18], rcx
mov qword [r9 + 0x10], rax
mov qword [rax + 0x18], r9
mov r9, rax
mov qword [rax + 0x10], 0
mov dword [rax + 8], 1
jmp 0x14031b197
cmp ebx, 4
jne 0x14031b084
cmp dword [rax + 8], 0
je 0x14031b197
cmp rax, r9
je 0x14031b197
cmp rax, r10
jne 0x14031b04a
mov r10, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x14031b05b
mov rcx, qword [rax + 0x10]
mov qword [rdx + 0x10], rcx
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14031b06c
mov rcx, qword [rax + 0x18]
mov qword [rdx + 0x18], rcx
mov qword [r9 + 0x10], rax
mov qword [rax + 0x18], r9
mov r9, rax
mov qword [rax + 0x10], 0
jmp 0x14031b197
cmp ebx, 3
jne 0x14031b0ea
cmp dword [rax + 8], 0
je 0x14031b197
cmp rax, r10
je 0x14031b0de
cmp rax, r9
jne 0x14031b0a1
mov r9, qword [rax + 0x18]
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14031b0b2
mov rcx, qword [rax + 0x18]
mov qword [rdx + 0x18], rcx
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x14031b0c3
mov rcx, qword [rax + 0x10]
mov qword [rdx + 0x10], rcx
mov qword [r10 + 0x18], rax
xor r8d, r8d
mov qword [rax + 0x10], r10
mov r10, rax
mov qword [rax + 0x18], r8
mov dword [rax + 8], r8d
jmp 0x14031b197
xor r8d, r8d
mov dword [rax + 8], r8d
jmp 0x14031b197
cmp ebx, 6
jne 0x14031b142
cmp dword [rax + 8], 0
je 0x14031b197
cmp rax, r10
je 0x14031b197
cmp rax, r9
jne 0x14031b10b
mov r9, qword [rax + 0x18]
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14031b11c
mov rcx, qword [rax + 0x18]
mov qword [rdx + 0x18], rcx
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x14031b12d
mov rcx, qword [rax + 0x10]
mov qword [rdx + 0x10], rcx
mov qword [r10 + 0x18], rax
mov qword [rax + 0x10], r10
mov r10, rax
mov qword [rax + 0x18], 0
jmp 0x14031b197
cmp ebx, 2
jne 0x14031b197
mov rdx, qword [r8 + 0x10]
cmp r10, rax
jne 0x14031b155
mov r10, rdx
jmp 0x14031b161
mov rcx, qword [rax + 0x18]
mov qword [rcx + 0x10], rdx
mov rdx, qword [r8 + 0x10]
cmp r9, rax
jne 0x14031b16a
mov r9, qword [rax + 0x18]
xor r8d, r8d
mov dword [rax + 8], r8d
test rdx, rdx
je 0x14031b17e
mov rcx, qword [rax + 0x18]
mov qword [rdx + 0x18], rcx
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x14031b18f
mov rcx, qword [rax + 0x10]
mov qword [rdx + 0x10], rcx
mov qword [rax + 0x10], r8
mov qword [rax + 0x18], r8
mov rcx, qword [rsp]
cmp rax, qword [rsp + 0x98]
jne 0x14031af10
mov r12, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x10]
mov qword [rsi], r10
mov qword [r14], r9
add rsp, 0x20
pop r14
pop r13
pop rsi
pop rbp
pop rbx
ret
mov qword [rsi], r10
mov qword [r14], r9
add rsp, 0x20
pop r14
pop r13
pop rsi
pop rbp
pop rbx
ret