Function at 0x1400d1800
Capabilities:
Access peb ldr_data
Check os version

Disassembly:
lea r12, [rsp - 0xd0]
cmp r12, qword [r14 + 0x10]
jbe 0x1400d20a0
push rbp
mov rbp, rsp
sub rsp, 0x148
mov qword [rsp + 0xf0], rax
lea rax, [0x1401366c0]
call fcn.14000d540
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xf0]
call fcn.1400d2560
jmp 0x1400d1855
mov rax, qword [rsp + 0xf0]
call fcn.1400d2560
test cl, cl
je 0x1400d192b
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0xc8], rax
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0x23
call fcn.140003d40
xorps xmm15, xmm15
mov r14, qword [0x1402dc9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
cmp rcx, 0xffffffffffffffff
je 0x1400d18aa
mov rdx, qword [rsp + 0x78]
nop
cmp rdx, rcx
jae 0x1400d18af
jmp 0x1400d209a
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0xc8]
jmp 0x1400d194f
test rcx, rcx
je 0x1400d1848
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0xc8], rax
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov byte [rsp + 0x10], 0x3a
call fcn.140003d40
xorps xmm15, xmm15
mov r14, qword [0x1402dc9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
nop dword [rax]
cmp rcx, 0xffffffffffffffff
je 0x1400d199b
mov rdx, qword [rsp + 0x78]
cmp rdx, rcx
jb 0x1400d2095
mov rax, qword [rsp + 0xc8]
mov rbx, rcx
mov rsi, rax
jmp 0x1400d1a09
mov rax, qword [rsp + 0xa8]
add rsp, 0x148
pop rbp
ret
dec rcx
mov rdx, rcx
neg rdx
sar rdx, 0x3f
and edx, 1
add rax, rdx
test rcx, rcx
je 0x1400d1974
movzx edx, byte [rax]
cmp dl, 0x20
je 0x1400d193c
nop dword [rax]
cmp dl, 9
je 0x1400d193c
cmp dl, 0xa
je 0x1400d193c
cmp dl, 0xd
je 0x1400d193c
jmp 0x1400d1974
dec rcx
test rcx, rcx
je 0x1400d1848
movzx edx, byte [rax + rcx - 1]
cmp dl, 0x20
je 0x1400d1971
cmp dl, 9
je 0x1400d1971
cmp dl, 0xa
je 0x1400d1971
cmp dl, 0xd
je 0x1400d1971
jmp 0x1400d18c0
nop
lea rax, [0x14012e7c0]
call fcn.14000d540
mov qword [rax + 8], 0x10
lea rcx, [0x14014ceeb]
mov qword [rax], rcx
lea rcx, [0x140179ac8]
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x18], rcx
cmp dword [0x1402dca80], 0
je 0x1400d19e6
call fcn.1400651c0
mov qword [r11], rax
mov rcx, qword [rdx + 0x20]
mov qword [r11 + 8], rcx
mov qword [rdx + 0x20], rax
mov rax, rdx
add rsp, 0x148
pop rbp
ret
dec rcx
mov rdi, rcx
neg rdi
sar rdi, 0x3f
and edi, 1
add rax, rdi
test rcx, rcx
je 0x1400d1a31
movzx edi, byte [rax]
cmp dil, 0x20
je 0x1400d19f6
cmp dil, 9
je 0x1400d19f6
nop dword [rax]
cmp dil, 0xa
je 0x1400d19f6
cmp dil, 0xd
je 0x1400d19f6
jmp 0x1400d1a31
dec rcx
test rcx, rcx
je 0x1400d1a58
movzx edi, byte [rax + rcx - 1]
nop dword [rax + rax]
cmp dil, 0x20
je 0x1400d1a2e
cmp dil, 9
je 0x1400d1a2e
cmp dil, 0xa
je 0x1400d1a2e
cmp dil, 0xd
je 0x1400d1a2e
lea rdi, [rbx + 1]
nop dword [rax]
cmp rdx, rdi
jb 0x1400d208a
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0xa0], rax
sub rdx, rbx
dec rdx
mov rbx, rdx
neg rdx
sar rdx, 0x3f
and rdi, rdx
lea rdx, [rsi + rdi]
jmp 0x1400d1ad5
lea rdi, [rdx + rsi*8]
lea rdi, [rdi - 0x20]
mov r8, qword [rsp + 0x120]
mov qword [rdx + rsi*8 - 0x28], r8
movups xmm0, xmmword [rsp + 0x128]
movups xmmword [rdi], xmm0
movups xmm0, xmmword [rsp + 0x138]
movups xmmword [rdi + 0x10], xmm0
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xe0]
jmp 0x1400d1e92
test rbx, rbx
je 0x1400d1848
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0x60], rbx
mov qword [rsp], rdx
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0x20
call fcn.140003d40
xorps xmm15, xmm15
mov r14, qword [0x1402dc9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
cmp rcx, 0xffffffffffffffff
je 0x1400d1b6d
mov rdx, qword [rsp + 0x60]
cmp rdx, rcx
jb 0x1400d2085
lea rax, [rcx + 1]
nop dword [rax + rax]
cmp rdx, rax
jb 0x1400d207d
sub rdx, rcx
dec rdx
mov rsi, rdx
neg rdx
sar rdx, 0x3f
and rax, rdx
mov rdx, qword [rsp + 0xb8]
lea r8, [rdx + rax]
jmp 0x1400d2020
xor eax, eax
mov rcx, qword [rsp + 0x60]
xor edx, edx
mov qword [rsp + 0x68], rcx
nop dword [rax + rax]
test rax, rax
je 0x1400d1cda
cmp byte [rdx], 0x5b
je 0x1400d1b9b
xor r8d, r8d
xor r9d, r9d
xor esi, esi
jmp 0x1400d1ce2
mov qword [rsp + 0x90], rax
mov qword [rsp + 0xe8], rdx
mov qword [rsp], rdx
mov qword [rsp + 8], rax
mov byte [rsp + 0x10], 0x5d
call fcn.140003d40
xorps xmm15, xmm15
mov r14, qword [0x1402dc9c8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
cmp rcx, 0xffffffffffffffff
je 0x1400d1f95
mov rdx, qword [rsp + 0x90]
cmp rdx, rcx
jb 0x1400d2007
cmp rcx, 1
jb 0x1400d1ffb
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x108], 0
movups xmmword [rsp + 0x110], xmm15
lea rbx, [rcx - 1]
mov qword [rsp + 0x40], rbx
mov rdx, rbx
neg rdx
sar rdx, 0x3f
and edx, 1
mov rsi, qword [rsp + 0xe8]
lea rax, [rsi + rdx]
mov qword [rsp + 0x98], rax
movups xmmword [rsp + 0xf8], xmm15
lea rdx, [0x1400d20c0]
mov qword [rsp + 0xf8], rdx
lea rdi, [rsp + 0x108]
mov qword [rsp + 0x100], rdi
lea rcx, [rsp + 0xf8]
call fcn.1400d2d20
test rax, rax
jne 0x1400d1ef1
mov rax, qword [rsp + 0x80]
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x90]
cmp rcx, rdx
jb 0x1400d1ff3
sub rcx, rax
lea rax, [rcx - 1]
mov rsi, rax
neg rsi
sar rsi, 0x3f
and rdx, rsi
mov rsi, qword [rsp + 0x108]
mov r8, qword [rsp + 0x110]
mov r9, qword [rsp + 0x118]
mov r10, qword [rsp + 0xe8]
add rdx, r10
mov rcx, qword [rsp + 0x68]
jmp 0x1400d1ce2
xor r8d, r8d
xor r9d, r9d
xor esi, esi
mov qword [rsp + 0x60], rax
mov qword [rsp + 0xe0], rdx
mov r10, qword [rsp + 0xa8]
cmp qword [r10 + 0x28], 0
jne 0x1400d1d5e
mov qword [rsp + 0x50], r8
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0x58], r9
call fcn.14000dfc0
cmp dword [0x1402dca80], 0
jne 0x1400d1d28
mov rdx, qword [rsp + 0xa8]
jmp 0x1400d1d40
call fcn.1400651c0
mov qword [r11], rax
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rdx + 0x28]
mov qword [r11 + 8], rsi
mov qword [rdx + 0x28], rax
mov rcx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov r10, rdx
movups xmmword [rsp + 0x120], xmm15
movups xmmword [rsp + 0x128], xmm15
movups xmmword [rsp + 0x138], xmm15
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x120], rdx
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x130], rsi
mov qword [rsp + 0x138], r8
mov qword [rsp + 0x140], r9
mov rbx, qword [r10 + 0x28]
lea rax, [0x140129f40]
mov rcx, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0x48]
call fcn.140012480
mov rcx, qword [rax + 0x10]
mov rbx, qword [rax + 8]
inc rbx
mov rdx, qword [rax]
cmp rcx, rbx
jae 0x1400d1e25
mov qword [rsp + 0xd8], rax
mov rax, rdx
mov edi, 1
lea rsi, [0x140135ee0]
call fcn.14004b0a0
mov rdx, qword [rsp + 0xd8]
mov qword [rdx + 0x10], rcx
cmp dword [0x1402dca80], 0
je 0x1400d1e19
call fcn.1400651c0
mov qword [r11], rax
mov rsi, qword [rdx]
mov qword [r11 + 8], rsi
mov qword [rdx], rax
mov rcx, rax
mov rax, rdx
mov rdx, rcx
mov qword [rax + 8], rbx
lea rsi, [rbx + rbx*4]
lea rbx, [rdx + rsi*8]
lea rbx, [rbx - 0x28]
cmp dword [0x1402dca80], 0
nop dword [rax]
je 0x1400d1a8f
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0xd0], rdx
lea rax, [0x140135ee0]
lea rcx, [rsp + 0x120]
call fcn.140013140
mov rdx, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0x88]
jmp 0x1400d1a8f
dec rbx
mov rsi, rbx
neg rsi
sar rsi, 0x3f
and esi, 1
add rdx, rsi
test rbx, rbx
je 0x1400d1ec0
movzx esi, byte [rdx]
nop word [rax + rax]
cmp sil, 0x20
je 0x1400d1e7f
cmp sil, 9
je 0x1400d1e7f
cmp sil, 0xa
je 0x1400d1e7f
cmp sil, 0xd
je 0x1400d1e7f
jmp 0x1400d1ec0
dec rbx
nop dword [rax]
test rbx, rbx
je 0x1400d1848
movzx esi, byte [rbx + rdx - 1]
cmp sil, 0x20
je 0x1400d1eba
cmp sil, 9
je 0x1400d1eba
nop word [rax + rax]
cmp sil, 0xa
je 0x1400d1eba
cmp sil, 0xd
je 0x1400d1eba
jmp 0x1400d1ae0
xor eax, eax
lea rbx, [0x14014d849]
mov ecx, 0x12
mov rdi, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x40]
call fcn.14004ede0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0xc0], rax
lea rax, [0x14012e7c0]
call fcn.14000d540
mov rdx, qword [rsp + 0x70]
mov qword [rax + 8], rdx
cmp dword [0x1402dca80], 0
jne 0x1400d1f46
mov rcx, qword [rsp + 0xc0]
jmp 0x1400d1f56
call fcn.1400651a0
mov rcx, qword [rsp + 0xc0]
mov qword [r11], rcx
mov qword [rax], rcx
lea rcx, [0x140179ac8]
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x18], rcx
cmp dword [0x1402dca80], 0
je 0x1400d1f85
call fcn.1400651c0
mov qword [r11], rax
mov rcx, qword [rdx + 0x20]
mov qword [r11 + 8], rcx
mov qword [rdx + 0x20], rax
mov rax, rdx
add rsp, 0x148
pop rbp
ret
nop
lea rax, [0x14012e7c0]
nop dword [rax]
call fcn.14000d540
mov qword [rax + 8], 0x1a
lea rcx, [0x140150cf8]
mov qword [rax], rcx
lea rcx, [0x140179ac8]
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x18], rcx
cmp dword [0x1402dca80], 0
je 0x1400d1fe3
call fcn.1400651c0
mov qword [r11], rax
mov rcx, qword [rdx + 0x20]
mov qword [r11 + 8], rcx
mov qword [rdx + 0x20], rax
mov rax, rdx
add rsp, 0x148
pop rbp
ret
mov rax, rdx
call fcn.1400655e0
mov eax, 1
xor ecx, ecx
call fcn.1400655e0
call fcn.140065560
dec rsi
mov r9, rsi
neg r9
sar r9, 0x3f
and r9d, 1
add r8, r9
test rsi, rsi
je 0x1400d204b
movzx r9d, byte [r8]
cmp r9b, 0x20
je 0x1400d200c
cmp r9b, 9
je 0x1400d200c
cmp r9b, 0xa
je 0x1400d200c
nop dword [rax + rax]
cmp r9b, 0xd
je 0x1400d200c
jmp 0x1400d204b
dec rsi
test rsi, rsi
je 0x1400d2072
movzx r9d, byte [r8 + rsi - 1]
cmp r9b, 0x20
je 0x1400d2048
nop dword [rax]
cmp r9b, 9
je 0x1400d2048
cmp r9b, 0xa
je 0x1400d2048
cmp r9b, 0xd
je 0x1400d2048
mov rax, rsi
mov rdx, r8
jmp 0x1400d1b76
mov rcx, rdx
call fcn.1400655e0
call fcn.140065560
mov rax, rdi
mov rcx, rdx
call fcn.1400655e0
call fcn.140065560
call fcn.140065560
nop
mov qword [rsp + 8], rax
call fcn.140063280
mov rax, qword [rsp + 8]
jmp fcn.1400d1800