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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
mov rax, qword [rdx + 0x138]
mov rdi, rcx
mov qword [rcx + 0xb8], rax
mov rbx, rdx
mov r15d, dword [rdx + 0x34]
xor ecx, ecx
mov esi, dword [rdx + 0x38]
mov qword [rdx + 0x138], rcx
add esi, r15d
mov rax, qword [rdi]
mov qword [rsp + 0x30], rax
movsx eax, word [rdx + 0x120]
mov word [rsp + 0x90], ax
mov dword [rsp + 0x98], eax
mov eax, dword [rdx + 0x80]
mov dword [rsp + 0xa8], eax
lea eax, [rcx + 1]
mov dword [rsp + 0xa0], r15d
test r15d, r15d
jne 0x14017b4a5
test esi, esi
jle 0x14017b4a5
add esi, eax
mov eax, dword [rdi + 0x98]
lea ecx, [rax + rax*2]
mov eax, dword [rdx + 0x3c]
shl ecx, 3
lea rdx, [rsp + 0xa8]
movsxd r12, ecx
sub eax, ecx
add r12, qword [rdi + 0x90]
mov rcx, rdi
movsxd rbp, eax
mov qword [rsp + 0x38], r12
and rbp, 0xfffffffffffffff8
call fcn.14017a3c8
xor r9d, r9d
cmp byte [rbx + 0x20], r9b
je 0x14017b4ef
lea eax, [r9 + 0x40]
cmp byte [rbx + 0x21], r9b
jne 0x14017b4f2
mov eax, r9d
mov ecx, dword [rdi + 0xd0]
and ecx, 0xffffffbf
or ecx, eax
mov dword [rdi + 0xd0], ecx
movzx eax, byte [rbx + 0x123]
test al, al
je 0x14017b5a8
mov edx, 0xa
cmp esi, edx
cmovl esi, edx
shl eax, 2
xor eax, ecx
lea r13d, [rdx + 2]
and eax, r13d
xor eax, ecx
lea ecx, [rdx - 2]
lea edx, [rcx - 4]
mov dword [rdi + 0xd0], eax
mov bl, byte [rbx + 0x123]
mov r15d, ecx
cmp bl, 2
cmovne edx, ecx
cmovne r15d, r9d
mov rcx, rdi
call fcn.14017ba8c
cmp bl, 2
lea eax, [r13 - 4]
mov r14d, r15d
cmovne r13d, eax
cmp r15, r13
jae 0x14017b59d
mov ebx, r15d
lea r12d, [rax - 7]
and qword [rsp + 0x20], 0
lea r9, [0x1404d97d0]
mov r9, qword [r9 + rbx*8]
mov edx, r14d
sub edx, r15d
xor r8d, r8d
mov rcx, rdi
call fcn.14017bb44
add r14d, r12d
add rbx, r12
cmp rbx, r13
jl 0x14017b56b
mov r12, qword [rsp + 0x38]
mov r15d, dword [rsp + 0xa0]
xor r9d, r9d
and dword [rdi + 0xd0], 0xfffffffc
mov rdx, r9
movsxd rax, esi
imul r14, rax, 0x38
cmp r14, rbp
jg 0x14017b5c7
mov rdx, r12
sub rdx, r14
add rdx, rbp
movsxd r8, dword [rsp + 0x98]
cmp r14, rbp
mov rbx, r9
mov qword [rdi + 0x70], rdx
cmovg rbx, r14
mov rcx, rbp
sub rcx, r14
mov rdx, r9
cmp r14, rbp
cmovg rcx, rbp
imul r13, r8, 0x38
cmp r13, rcx
jg 0x14017b5ff
sub rcx, r13
lea rdx, [rcx + r12]
jmp 0x14017b602
add rbx, r13
movsxd rbp, dword [rsp + 0xa8]
mov rax, r9
shl rbp, 3
mov qword [rdi + 0x88], rdx
cmp rbp, rcx
jg 0x14017b628
mov rax, r12
sub rax, rbp
add rax, rcx
jmp 0x14017b62b
add rbx, rbp
mov rdx, rcx
movsxd r15, r15d
sub rdx, rbp
mov qword [rdi + 0x78], rax
cmp rbp, rcx
mov rax, r9
cmovg rdx, rcx
shl r15, 3
cmp r15, rdx
jg 0x14017b656
mov rax, rdx
sub rax, r15
add rax, r12
jmp 0x14017b659
add rbx, r15
mov r12, qword [rsp + 0x30]
mov qword [rdi + 0x80], rax
test rbx, rbx
je 0x14017b707
mov rdx, rbx
mov rcx, r12
call fcn.14015c7e4
xor r9d, r9d
mov qword [rdi + 0x108], rax
mov rcx, rax
cmp byte [r12 + 0x67], r9b
jne 0x14017b6ff
mov rax, qword [rdi + 0x70]
test rax, rax
jne 0x14017b6a2
cmp r14, rbx
jg 0x14017b6a2
sub rbx, r14
lea rax, [rcx + rbx]
mov qword [rdi + 0x70], rax
mov rax, qword [rdi + 0x88]
test rax, rax
jne 0x14017b6be
cmp r13, rbx
jg 0x14017b6be
sub rbx, r13
lea rax, [rbx + rcx]
mov qword [rdi + 0x88], rax
mov rax, qword [rdi + 0x78]
test rax, rax
jne 0x14017b6da
cmp rbp, rbx
jg 0x14017b6da
sub rbx, rbp
lea rax, [rbx + rcx]
mov qword [rdi + 0x78], rax
mov rax, qword [rdi + 0x80]
test rax, rax
jne 0x14017b6f8
cmp r15, rbx
jg 0x14017b6f8
mov rax, rcx
sub rax, r15
add rax, rbx
mov qword [rdi + 0x80], rax
mov r8d, dword [rsp + 0x98]
cmp byte [r12 + 0x67], r9b
je 0x14017b71d
and qword [rdi + 0x28], 0
mov word [rdi + 0x20], r9w
jmp 0x14017b79e
mov eax, dword [rsp + 0xa0]
mov ecx, 1
mov dword [rdi + 0x2c], eax
movzx eax, word [rsp + 0x90]
mov word [rdi + 0x20], ax
mov rax, qword [rdi + 0x88]
test r8d, r8d
jle 0x14017b75f
add rax, 8
sub r8d, ecx
mov qword [rax + 0x20], r12
mov word [rax], cx
mov dword [rax + 0x18], r9d
lea rax, [rax + 0x38]
test r8d, r8d
jg 0x14017b748
mov rax, qword [rdi + 0x70]
mov dword [rdi + 0x28], esi
test esi, esi
jle 0x14017b78a
add rax, 8
sub esi, ecx
mov qword [rax + 0x20], r12
mov word [rax], 0x80
mov ecx, 1
mov dword [rax + 0x18], r9d
lea rax, [rax + 0x38]
test esi, esi
jg 0x14017b76e
mov rcx, qword [rdi + 0x80]
mov r8, r15
xor edx, edx
call fcn.140408b90
xor r9d, r9d
or dword [rdi + 0x34], 0xffffffff
mov dword [rdi + 0x24], 0x2df20da3
mov dword [rdi + 0x38], r9d
mov word [rdi + 0xca], 0xff02
mov qword [rdi + 0x40], r9
mov dword [rdi + 0x30], 1
mov dword [rdi + 0x48], r9d
mov qword [rdi + 0x58], r9
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret