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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
test edx, edx
je 0x1401169c8
mov byte [rcx + 4], 0x12
mov dword [rcx], 2
mov rax, rcx
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
bt rdx, 0x20
jb 0x140116a5f
movabs rax, 0xaaaaaaaaaaaaaaab
imul rax, r9
ror rax, 1
movabs rdx, 0x2aaaaaaaaaaaaaab
cmp rax, rdx
jb 0x140116a71
mov rax, qword [0x1402c39c8]
mov rax, qword [rax]
cmp rax, 5
je 0x140116e19
cmp rax, 1
ja 0x140116e19
movzx edx, byte [0x1402c22e0]
cmp dl, 2
je 0x140116cfe
movzx eax, dl
cmp eax, 1
je 0x140116d00
test eax, eax
je 0x140116e19
lea rax, [0x1402c22d0]
mov rsi, rcx
mov rcx, rax
mov rdi, r9
call fcn.1401c6f10
mov r9, rdi
mov rcx, rsi
mov edx, eax
test al, al
jne 0x140116d00
jmp 0x140116e19
test r9, r9
je 0x140116c3d
mov byte [rcx + 4], 0x10
jmp 0x1401169ab
test r9, r9
je 0x140116c76
xor eax, eax
lea r15, [0x1401fa078]
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x24], 0
xor r10d, r10d
mov dword [rsp + 0x2c], 0
xor edi, edi
mov dword [rsp + 0x28], 0
jmp 0x140116adc
shl ebx, 0x18
shl esi, 0x10
or esi, ebx
shl edx, 8
or edx, esi
or edx, r11d
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x44], edx
nop word cs:[rax + rax]
add r8, r12
sub r9, r12
je 0x140116c9d
cmp r9, 6
mov r12d, 6
cmovb r12, r9
cmp r9, 1
je 0x140116e22
cmp r9, 2
jbe 0x140116e38
cmp r9, 3
je 0x140116e4e
cmp r9, 4
jbe 0x140116e64
cmp r9, 5
je 0x140116e7a
movzx edx, byte [r8]
movzx r11d, byte [r8 + 1]
shl edx, 8
lea r14d, [rdx + r11]
dec r14d
cmp r14d, 7
ja case.0x140116b50.7
movzx ebx, byte [r8 + 2]
movzx esi, byte [r8 + 3]
movzx edx, byte [r8 + 4]
movzx r11d, byte [r8 + 5]
movsxd r14, dword [r15 + r14*4]
add r14, r15
jmp r14
shl ebx, 0x18
shl esi, 0x10
or esi, ebx
shl edx, 8
or edx, esi
or edx, r11d
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x38], edx
jmp case.0x140116b50.7
shl ebx, 0x18
shl esi, 0x10
or esi, ebx
shl edx, 8
or edx, esi
or edx, r11d
mov edi, 1
mov ebp, edx
cmp edx, 2
jb case.0x140116b50.7
jmp 0x140116cf5
shl ebx, 0x18
shl esi, 0x10
or esi, ebx
shl edx, 8
or edx, esi
or edx, r11d
mov eax, 1
mov r13d, edx
cmp edx, 2
jb case.0x140116b50.7
jmp 0x140116cf5
shl ebx, 0x18
shl esi, 0x10
or esi, ebx
shl edx, 8
or edx, esi
or edx, r11d
mov dword [rsp + 0x2c], 1
mov dword [rsp + 0x3c], edx
jmp case.0x140116b50.7
shl ebx, 0x18
shl esi, 0x10
or esi, ebx
shl edx, 8
or edx, esi
or edx, r11d
mov r10d, 1
mov dword [rsp + 0x40], edx
jns case.0x140116b50.7
jmp 0x140116cf5
shl ebx, 0x18
shl esi, 0x10
or esi, ebx
shl edx, 8
lea ebx, [rdx + rsi]
add ebx, 0xffffc000
cmp ebx, 0xffc000
jae 0x140116cf5
or esi, edx
or esi, r11d
mov dword [rsp + 0x24], 1
mov edx, esi
mov dword [rsp + 0x34], esi
jmp case.0x140116b50.7
mov dword [rcx], 0
mov dword [rcx + 8], 0
mov dword [rcx + 0x10], 0
mov dword [rcx + 0x18], 0
mov dword [rcx + 0x20], 0
mov dword [rcx + 0x28], 0
mov dword [rcx + 0x30], 0
mov byte [rcx + 0x38], 1
jmp 0x1401169b1
mov dword [rsp + 0x28], 0
xor edi, edi
mov dword [rsp + 0x2c], 0
xor r10d, r10d
mov dword [rsp + 0x24], 0
mov dword [rsp + 0x30], 0
xor eax, eax
mov edx, dword [rsp + 0x28]
mov dword [rcx], edx
mov edx, dword [rsp + 0x38]
mov dword [rcx + 4], edx
mov dword [rcx + 8], edi
mov dword [rcx + 0xc], ebp
mov edx, dword [rsp + 0x2c]
mov dword [rcx + 0x10], edx
mov edx, dword [rsp + 0x3c]
mov dword [rcx + 0x14], edx
mov dword [rcx + 0x18], r10d
mov edx, dword [rsp + 0x40]
mov dword [rcx + 0x1c], edx
mov edx, dword [rsp + 0x24]
mov dword [rcx + 0x20], edx
mov edx, dword [rsp + 0x34]
mov dword [rcx + 0x24], edx
mov edx, dword [rsp + 0x30]
mov dword [rcx + 0x28], edx
mov edx, dword [rsp + 0x44]
mov dword [rcx + 0x2c], edx
mov dword [rcx + 0x30], eax
mov dword [rcx + 0x34], r13d
mov byte [rcx + 0x38], 0
jmp 0x1401169b1
mov byte [rcx + 4], 0xe
jmp 0x1401169ab
mov dl, 2
mov rax, qword [0x1402c22d0]
mov rsi, rcx
mov rcx, rax
mov rdi, r9
call fcn.140149040
mov rcx, rsi
test al, al
je 0x140116e19
mov rcx, qword [0x1402c22d0]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x140116e90
lea r8, [rcx + 0x30]
mov r9, qword [rcx + 0x30]
movups xmm0, xmmword [rcx + 0x40]
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x98], rax
movups xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0x48], rdi
lea rax, [rsp + 0x48]
mov qword [rsp + 0x50], rax
lea rax, [0x140001560]
mov qword [rsp + 0x58], rax
lea rax, str.invalid_settings_payload_length__len
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], 1
mov qword [rsp + 0xd8], 0
lea rax, [rsp + 0x50]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], 1
lea rax, [rsp + 0x90]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x68], rax
lea rax, [0x1401f7ae8]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], 1
mov qword [rsp + 0x88], r8
lea rdx, [rsp + 0x78]
call fcn.14014a230
mov rcx, rsi
mov byte [rsi + 4], 0x11
jmp 0x1401169ab
mov byte [rcx + 4], 0x11
jmp 0x1401169ab
lea r8, [0x1401f83b0]
mov ecx, 1
mov edx, 1
call fcn.1401ca050
lea r8, [0x1401f83c8]
mov ecx, 2
mov edx, 2
call fcn.1401ca050
lea r8, [0x1401f83c8]
mov ecx, 3
mov edx, 3
call fcn.1401ca050
lea r8, [0x1401f83c8]
mov ecx, 4
mov edx, 4
call fcn.1401ca050
lea r8, [0x1401f83c8]
mov ecx, 5
mov edx, 5
call fcn.1401ca050
lea rcx, [0x1401f79c8]
lea r8, [0x1401f8208]
mov edx, 0x22
call fcn.1401c9ee0
int3