Function at 0x14017a520
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x140]
cmp r12, qword [r14 + 0x10]
jbe 0x14017afe3
push rbp
mov rbp, rsp
sub rsp, 0x1b8
mov qword [rsp + 0x1c8], rax
mov qword [rsp + 0x1d0], rbx
mov qword [rsp + 0x1d8], rcx
mov qword [rsp + 0x1e0], rdi
mov qword [rsp + 0x1e8], rsi
mov qword [rsp + 0x1f0], r8
mov qword [rsp + 0x1f8], r9
mov qword [rsp + 0x200], r10
mov qword [rsp + 0x208], r11
mov qword [rsp + 0x68], r10
bt r10d, 0
setb byte [rsp + 0x56]
bt r10d, 0
jb 0x14017a59d
jmp 0x14017a59f
jmp 0x14017a5b2
mov rdx, qword [rsp + 0x68]
cmp qword [0x14020b300], rdx
setg byte [rsp + 0x56]
jmp 0x14017a5b2
movzx edx, byte [rsp + 0x56]
mov byte [rsp + 0x57], dl
test dl, dl
jne 0x14017a5c2
nop
jmp 0x14017a5c4
jmp 0x14017a5d1
cmp qword [rsp + 0x68], 2
setl byte [rsp + 0x57]
jmp 0x14017a5d1
cmp byte [rsp + 0x57], 0
jne 0x14017a5da
jmp 0x14017a630
mov rax, qword [rsp + 0x1c8]
mov rdi, qword [rsp + 0x1e0]
mov r9, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0x1e8]
mov r10, qword [rsp + 0x200]
mov rcx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x1f0]
mov r11, qword [rsp + 0x208]
call fcn.1401796c0
add rsp, 0x1b8
pop rbp
ret
mov rdx, qword [rsp + 0x68]
sar rdx, 1
mov qword [rsp + 0x60], rdx
mov r12, rdx
shl rdx, 3
mov r13, qword [rsp + 0x1e8]
sub r13, r12
mov r15, qword [rsp + 0x1f0]
sub r15, r12
mov r12, r15
neg r15
sar r15, 0x3f
and rdx, r15
add rdx, qword [rsp + 0x1e0]
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x1a8], r13
mov qword [rsp + 0x1b0], r12
mov rdx, qword [rsp + 0x60]
mov r12, qword [rsp + 0x1f0]
mov r13, qword [rsp + 0x1e0]
mov qword [rsp + 0x188], r13
mov qword [rsp + 0x190], rdx
mov qword [rsp + 0x198], r12
mov rdx, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1a8]
mov r13, qword [rsp + 0x1b0]
mov qword [rsp + 0xf8], rdx
mov qword [rsp + 0x100], r12
mov qword [rsp + 0x108], r13
mov rdx, qword [rsp + 0x188]
mov r12, qword [rsp + 0x190]
mov r13, qword [rsp + 0x198]
mov qword [rsp + 0x110], rdx
mov qword [rsp + 0x118], r12
mov qword [rsp + 0x120], r13
mov rdx, qword [rsp + 0x60]
mov r12, rdx
shl rdx, 3
mov r13, qword [rsp + 0x200]
sub r13, r12
mov r15, qword [rsp + 0x208]
sub r15, r12
mov r12, r15
neg r15
sar r15, 0x3f
and rdx, r15
add rdx, qword [rsp + 0x1f8]
mov qword [rsp + 0x188], rdx
mov qword [rsp + 0x190], r13
mov qword [rsp + 0x198], r12
mov rdx, qword [rsp + 0x60]
mov r12, qword [rsp + 0x208]
mov r13, qword [rsp + 0x1f8]
mov qword [rsp + 0x1a0], r13
mov qword [rsp + 0x1a8], rdx
mov qword [rsp + 0x1b0], r12
mov rdx, qword [rsp + 0x188]
mov r12, qword [rsp + 0x190]
mov r13, qword [rsp + 0x198]
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0xc0], r13
mov r9, qword [rsp + 0x1a0]
mov r10, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0x1b0]
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xd0], r10
mov qword [rsp + 0xd8], r11
mov rax, qword [rsp + 0x1c8]
mov rdi, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x1d8]
mov r8, qword [rsp + 0x120]
call fcn.14017a520
mov rax, qword [rsp + 0x68]
mov rdx, rax
shl rdx, 3
mov rbx, qword [rsp + 0x1d0]
sub rbx, rax
mov rcx, qword [rsp + 0x1d8]
sub rcx, rax
mov rax, rcx
neg rax
sar rax, 0x3f
and rax, rdx
add rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], rbx
mov qword [rsp + 0x1b0], rcx
mov r9, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x100]
mov r10, qword [rsp + 0xb8]
mov r8, qword [rsp + 0x108]
mov r11, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xf8]
call fcn.14017a520
mov qword [rsp + 0x58], 1
mov rdx, qword [rsp + 0x68]
mov r12, rdx
shl rdx, 4
shl r12, 1
mov qword [rsp + 0x90], r12
mov r13, qword [rsp + 0x68]
shl r13, 1
add r13, qword [rsp + 0x60]
mov qword [rsp + 0x88], r13
sub r13, r12
mov r15, qword [rsp + 0x1d8]
sub r15, r12
mov r12, r15
neg r15
sar r15, 0x3f
and rdx, r15
add rdx, qword [rsp + 0x1c8]
mov qword [rsp + 0xe0], rdx
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0xf0], r12
mov r15, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x120]
mov qword [rsp], rdx
mov qword [rsp + 8], r13
mov qword [rsp + 0x10], r12
mov qword [rsp + 0x18], r15
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rdi
call fcn.140187cc0
xorps xmm15, xmm15
mov r14, qword [0x140442a78]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x80], rdx
test rdx, rdx
jne 0x14017a9a5
nop
jmp 0x14017aa40
mov rax, qword [rsp + 0x58]
neg rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x120]
mov r8, qword [rsp + 0xf8]
mov r9, qword [rsp + 0x100]
mov r10, qword [rsp + 0x108]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
call fcn.140187cc0
xorps xmm15, xmm15
mov r14, qword [0x140442a78]
mov r14, qword gs:[r14]
mov r14, qword [r14]
jmp 0x14017aa42
jmp 0x14017aa42
mov rax, qword [rsp + 0x68]
shl rax, 1
add rax, qword [rsp + 0x60]
mov qword [rsp + 0x88], rax
mov rcx, rax
shl rax, 3
mov rdx, qword [rsp + 0x68]
lea rdx, [rdx + rdx*2]
mov qword [rsp + 0x90], rdx
sub rdx, rcx
mov rbx, qword [rsp + 0x1d8]
sub rbx, rcx
mov rcx, rbx
neg rbx
sar rbx, 0x3f
and rax, rbx
add rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0xa8], rcx
mov rbx, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xb8]
mov r10, qword [rsp + 0xc0]
mov qword [rsp], rax
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
call fcn.140187cc0
xorps xmm15, xmm15
mov r14, qword [0x140442a78]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x80], rax
test rax, rax
jne 0x14017ab34
jmp 0x14017abce
mov rax, qword [rsp + 0x58]
neg rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0xd0]
mov r10, qword [rsp + 0xd8]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
call fcn.140187cc0
xorps xmm15, xmm15
mov r14, qword [0x140442a78]
mov r14, qword gs:[r14]
mov r14, qword [r14]
jmp 0x14017abd0
jmp 0x14017abd0
mov rdx, qword [rsp + 0x68]
lea rax, [rdx + rdx*2]
mov qword [rsp + 0x90], rax
mov rbx, qword [rsp + 0x1d0]
sub rbx, rax
mov rcx, qword [rsp + 0x1d8]
sub rcx, rax
mov rdx, rcx
neg rdx
shl rax, 3
sar rdx, 0x3f
and rax, rdx
add rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x150], rcx
mov rsi, qword [rsp + 0xe8]
mov r10, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xf0]
mov r11, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xe0]
mov r9, qword [rsp + 0x98]
call fcn.14017a520
mov rdx, qword [rsp + 0x68]
mov r12, rdx
shl rdx, 5
shl r12, 2
mov qword [rsp + 0x90], r12
mov r13, qword [rsp + 0x1d0]
sub r13, r12
mov r15, qword [rsp + 0x1d8]
sub r15, r12
mov r12, r15
neg r15
sar r15, 0x3f
and rdx, r15
add rdx, qword [rsp + 0x1c8]
mov qword [rsp + 0x128], rdx
mov qword [rsp + 0x130], r13
mov qword [rsp + 0x138], r12
mov rdx, qword [rsp + 0x68]
shl rdx, 1
mov qword [rsp + 0x90], rdx
mov r12, qword [rsp + 0x1c8]
mov r13, qword [rsp + 0x1d8]
mov qword [rsp + 0x1a0], r12
mov qword [rsp + 0x1a8], rdx
mov qword [rsp + 0x1b0], r13
mov rdx, qword [rsp + 0x128]
mov r12, qword [rsp + 0x130]
mov r13, qword [rsp + 0x138]
mov qword [rsp + 0x170], rdx
mov qword [rsp + 0x178], r12
mov qword [rsp + 0x180], r13
mov rdx, qword [rsp + 0x1a8]
mov r12, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x1b0]
mov qword [rsp + 0x158], r12
mov qword [rsp + 0x160], rdx
mov qword [rsp + 0x168], r13
mov r12, qword [rsp + 0x178]
mov qword [rsp + 0x78], r12
nop dword [rax]
cmp r12, rdx
jg 0x14017ad67
jmp 0x14017ad6e
mov qword [rsp + 0x78], rdx
jmp 0x14017ad70
jmp 0x14017ad70
mov rdx, qword [rsp + 0x170]
nop dword [rax + rax]
cmp qword [rsp + 0x158], rdx
jne 0x14017ad8c
jmp 0x14017adb1
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x70], rcx
shl rcx, 3
mov rbx, qword [rsp + 0x158]
mov rax, qword [rsp + 0x170]
call fcn.140070ca0
jmp 0x14017adb3
jmp 0x14017adb3
mov rax, qword [rsp + 0x60]
mov rdx, rax
shl rdx, 3
mov rbx, qword [rsp + 0x1d0]
sub rbx, rax
mov rcx, qword [rsp + 0x1d8]
sub rcx, rax
mov rax, rcx
neg rax
sar rax, 0x3f
and rax, rdx
add rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], rbx
mov qword [rsp + 0x1b0], rcx
mov r9, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x130]
mov r8, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x128]
nop
call fcn.14017a060
mov rdx, qword [rsp + 0x60]
mov r10, rdx
shl rdx, 3
mov r11, qword [rsp + 0x1d0]
sub r11, r10
mov r12, qword [rsp + 0x1d8]
sub r12, r10
mov r10, r12
neg r12
sar r12, 0x3f
and rdx, r12
add rdx, qword [rsp + 0x1c8]
mov qword [rsp + 0x1a0], rdx
mov qword [rsp + 0x1a8], r11
mov qword [rsp + 0x1b0], r10
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x138]
sub r8, rdi
mov rdx, r8
neg rdx
mov r10, rdi
shl r10, 3
sar rdx, 0x3f
and r10, rdx
add r10, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x130]
sub rsi, rdi
mov qword [rsp + 0x188], r10
mov qword [rsp + 0x190], rsi
mov qword [rsp + 0x198], r8
mov r9, qword [rsp + 0x68]
mov rax, qword [rsp + 0x1a0]
mov rbx, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x1b0]
mov rdi, r10
call fcn.14017a060
cmp qword [rsp + 0x58], 0
jg 0x14017aef2
jmp 0x14017af67
mov rax, qword [rsp + 0x60]
mov rdx, rax
shl rdx, 3
mov rbx, qword [rsp + 0x1d0]
sub rbx, rax
mov rcx, qword [rsp + 0x1d8]
sub rcx, rax
mov rax, rcx
neg rax
sar rax, 0x3f
and rax, rdx
add rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x190], rbx
mov qword [rsp + 0x198], rcx
mov r9, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x148]
mov r8, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x140]
nop
call fcn.14017a060
jmp 0x14017afda
mov rax, qword [rsp + 0x60]
mov rdx, rax
shl rdx, 3
mov rbx, qword [rsp + 0x1d0]
sub rbx, rax
mov rcx, qword [rsp + 0x1d8]
sub rcx, rax
mov rax, rcx
neg rax
sar rax, 0x3f
and rax, rdx
add rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x190], rbx
mov qword [rsp + 0x198], rcx
mov r9, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x148]
mov r8, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x140]
call fcn.14017a2c0
jmp 0x14017afda
add rsp, 0x1b8
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x48], r11
call fcn.14006e160
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
jmp fcn.14017a520