Function at 0x3ad140
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x7f8]
cmp r12, qword [r14 + 0x10]
jbe 0x3ad458
sub rsp, 0x878
mov qword [rsp + 0x870], rbp
lea rbp, [rsp + 0x870]
lea rdi, [rsp + 0x70]
mov ecx, 0x100
mov rdx, rax
xor eax, eax
rep stosq qword [rdi], rax
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x4c], 0
mov dword [rsp + 0x44], 0
mov qword [rsp + 0x50], 0
mov rbx, qword [r14 + 0x30]
cmp qword [0x01370520], 0xffffffffffffffff
je 0x3ad319
test rdx, rdx
jge 0x3ad1bd
mov rcx, rdx
mov edx, 0xffffffff
jmp 0x3ad206
jne 0x3ad1c6
mov rcx, rdx
xor edx, edx
jmp 0x3ad206
cmp rdx, 0xf4240
jge 0x3ad1d9
mov rcx, rdx
mov edx, 1
jmp 0x3ad206
movabs rcx, 0x38d7ea4c68000
cmp rdx, rcx
jge 0x3ad1fe
movabs rax, 0x431bde82d7b634db
mov rcx, rdx
imul rdx
sar rdx, 0x12
jmp 0x3ad206
mov rcx, rdx
mov edx, 0x3b9aca00
movsxd rsi, dword [0x0140caa8]
test rsi, rsi
je 0x3ad452
mov eax, 0x40
mov edi, edx
nop dword [rax]
cmp rsi, 0xffffffffffffffff
je 0x3ad22d
cqo
idiv rsi
jmp 0x3ad232
neg rax
xor edx, edx
mov dword [rsp + 0x44], eax
cmp eax, 8
jae 0x3ad248
mov dword [rsp + 0x44], 8
test rcx, rcx
jmp 0x3ad24b
test rcx, rcx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x68], rbx
je 0x3ad25e
mov byte [rbx + 0xe5], 1
mov rax, qword [0x01370520]
mov rcx, qword [sym.imp.kernel32.dll_GetQueuedCompletionStatusEx]
lea rdx, [rsp + 0x70]
mov ebx, dword [rsp + 0x44]
lea rsi, [rsp + 0x44]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
mov eax, edi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0
call fcn.003b01c0
xorps xmm15, xmm15
mov r14, qword [0x0140cd20]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x38], 0
nop
je 0x3ad2d7
mov rdx, qword [rsp + 0x68]
mov byte [rdx + 0xe5], 0
mov rdx, qword [rsp + 0x58]
xor eax, eax
jmp 0x3ad340
mov rax, qword [rsp + 0x68]
mov byte [rax + 0xe5], 0
call fcn.003dd3c0
xorps xmm15, xmm15
mov r14, qword [0x0140cd20]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
nop dword [rax]
cmp eax, 0x102
jne 0x3ad32b
xor eax, eax
mov rbp, qword [rsp + 0x870]
add rsp, 0x878
ret
xor eax, eax
mov rbp, qword [rsp + 0x870]
add rsp, 0x878
ret
lea rax, [0x00f082a7]
mov ebx, 0x17
call fcn.003b2bc0
lea eax, [rbx + 1]
nop
cmp dword [rsp + 0x44], eax
jbe 0x3ad433
cmp rax, 0x40
jae 0x3ad448
mov dword [rsp + 0x48], eax
mov ebx, eax
shl rax, 5
mov rsi, qword [rsp + rax + 0x78]
test rsi, rsi
jne 0x3ad389
nop
xor esi, esi
lea rdi, [0x0140cabc]
xchg dword [rdi], esi
test rdx, rdx
jne 0x3ad33c
call fcn.003ad080
mov rdx, qword [rsp + 0x58]
mov ebx, dword [rsp + 0x48]
jmp 0x3ad33c
mov qword [rsp + 0x60], rsi
mov dword [rsp + 0x40], 0
mov rax, qword [rsi + 0x20]
mov rcx, qword [0x013b4410]
mov rax, qword [rax + 8]
lea rbx, [rsp + 0x40]
lea rdi, [rsp + 0x4c]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], rdi
call fcn.003b0140
xorps xmm15, xmm15
mov r14, qword [0x0140cd20]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x30], 0
je 0x3ad3f3
xor eax, eax
jmp 0x3ad40d
call fcn.003dd3c0
xorps xmm15, xmm15
mov r14, qword [0x0140cd20]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov edi, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x60]
mov ecx, eax
lea rax, [rsp + 0x50]
nop dword [rax]
call fcn.003ad480
mov rdx, qword [rsp + 0x58]
mov ebx, dword [rsp + 0x48]
jmp 0x3ad33c
mov rax, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x870]
add rsp, 0x878
ret
mov ecx, 0x40
call fcn.003dbe00
call fcn.003b1500
nop
mov qword [rsp + 8], rax
nop dword [rax]
call fcn.003d97a0
mov rax, qword [rsp + 8]
jmp fcn.003ad140