Function at 0x2f2bc6500
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x20]
cmp r12, qword [r14 + 0x10]
jbe 0x2f2bc6968
push rbp
mov rbp, rsp
sub rsp, 0x98
mov qword [rsp + 0xb0], rbx
test rcx, rcx
je 0x2f2bc6534
movzx edx, byte [rcx + rbx - 1]
cmp dl, 0x2e
sete dl
jmp 0x2f2bc6540
xor edx, edx
nop word [rax + rax]
nop
cmp rcx, 0xfe
jg 0x2f2bc6774
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0xb8], rcx
nop dword [rax]
je 0x2f2bc66ff
test dl, dl
jne 0x2f2bc6704
mov qword [rsp + 0xa8], rax
mov qword [rsp], rbx
mov qword [rsp + 8], rcx
mov byte [rsp + 0x10], 0x2e
call fcn.2f2b037c0
xorps xmm15, xmm15
mov r14, qword [0x2f2e2f508]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x30]
mov qword [rsp + 0x68], rdx
mov rbx, qword [rsp + 0xb0]
lea rdi, [0x2f2cdec58]
mov esi, 1
xor eax, eax
mov rcx, qword [rsp + 0xb8]
call fcn.2f2b52e60
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x60], rbx
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x20]
mov qword [rsp + 0x58], rdx
lea rsi, [rdx + 1]
mov qword [rsp + 0x48], rsi
lea rax, [0x2f2c659a0]
xor ebx, ebx
mov rcx, rsi
call fcn.2f2b4f0c0
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
nop dword [rax + rax]
cmp rcx, rdx
jle 0x2f2bc6629
xor ebx, ebx
jmp 0x2f2bc6660
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x60]
nop
call fcn.2f2bc6480
xor eax, 1
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
mov ebx, eax
mov rax, qword [rsp + 0x88]
nop dword [rax]
test bl, bl
je 0x2f2bc66d6
mov r8, qword [rsp + 0x58]
cmp r8, 0xffffffffffffffff
je 0x2f2bc6676
mov rbx, qword [rsp + 0x48]
jmp 0x2f2bc6699
mov ebx, 1
xor ecx, ecx
mov rdi, rbx
lea rsi, [0x2f2c659a0]
call fcn.2f2b4f1a0
mov rdx, qword [rsp + 0x70]
mov rbx, rcx
mov rcx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
mov qword [rax + 8], r8
cmp dword [0x2f2e2f580], 0
jne 0x2f2bc66b5
mov r9, qword [rsp + 0x90]
jmp 0x2f2bc66cc
call fcn.2f2b6a660
mov r9, qword [rsp + 0x90]
mov qword [r11], r9
mov r10, qword [rax]
mov qword [r11 + 8], r10
mov qword [rax], r9
mov esi, 1
jmp 0x2f2bc66ea
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x48]
xor esi, esi
mov r10, qword [rsp + 0xa8]
mov r11, qword [r10 + 0x18]
mov r10, qword [r10 + 0x20]
jmp 0x2f2bc67b5
nop
test dl, dl
je 0x2f2bc6774
mov rax, rbx
mov rbx, rcx
call fcn.2f2bc6480
test al, al
jne 0x2f2bc6764
lea rax, [0x2f2c67f00]
call fcn.2f2b0ed40
mov rcx, qword [rsp + 0xb8]
mov qword [rax + 8], rcx
cmp dword [0x2f2e2f580], 0
jne 0x2f2bc6740
mov rdx, qword [rsp + 0xb0]
jmp 0x2f2bc6750
call fcn.2f2b6a640
mov rdx, qword [rsp + 0xb0]
mov qword [r11], rdx
mov qword [rax], rdx
mov ebx, 1
mov rcx, rbx
add rsp, 0x98
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0x98
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0x98
pop rbp
ret
mov r11, qword [rsp + 0x88]
add r11, 0x10
mov r10, qword [rsp + 0x58]
dec r10
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x90]
mov rsi, rbx
mov rbx, rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x48], rbx
test r10, r10
jle 0x2f2bc68b9
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x88], r11
mov rdi, qword [r11]
mov rsi, qword [r11 + 8]
xor eax, eax
mov rbx, r9
mov rcx, r8
call fcn.2f2b52e60
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x50], rbx
nop dword [rax + rax]
call fcn.2f2bc6480
test al, al
je 0x2f2bc681d
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x78]
jmp 0x2f2bc6784
mov rdx, qword [rsp + 0x50]
cmp rdx, 0xfe
jg 0x2f2bc68a5
mov rbx, qword [rsp + 0x40]
inc rbx
mov rcx, qword [rsp + 0x48]
cmp rcx, rbx
jb 0x2f2bc6844
mov rax, qword [rsp + 0x78]
jmp 0x2f2bc685f
mov rax, qword [rsp + 0x78]
mov edi, 1
lea rsi, [0x2f2c659a0]
call fcn.2f2b4f1a0
mov rdx, qword [rsp + 0x50]
lea r8, [rbx - 1]
shl r8, 4
mov qword [rax + r8 + 8], rdx
cmp dword [0x2f2e2f580], 0
jne 0x2f2bc6880
mov rdx, qword [rsp + 0x80]
jmp 0x2f2bc6898
call fcn.2f2b6a660
mov rdx, qword [rsp + 0x80]
mov qword [r11], rdx
mov r9, qword [rax + r8]
mov qword [r11 + 8], r9
mov qword [rax + r8], rdx
nop dword [rax]
jmp 0x2f2bc6784
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x78]
jmp 0x2f2bc6784
cmp rcx, rdx
jg 0x2f2bc68c2
xor ecx, ecx
jmp 0x2f2bc68ee
mov rax, r9
mov rbx, r8
call fcn.2f2bc6480
xor eax, 1
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x90]
mov ecx, eax
mov rax, qword [rsp + 0x78]
test cl, cl
je 0x2f2bc6956
lea rdx, [rsi + 1]
cmp rbx, rdx
jae 0x2f2bc6925
mov rcx, rbx
mov edi, 1
lea rsi, [0x2f2c659a0]
mov rbx, rdx
call fcn.2f2b4f1a0
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x90]
mov rdx, rbx
mov rbx, rcx
lea rsi, [rdx - 1]
shl rsi, 4
mov qword [rax + rsi + 8], r8
cmp dword [0x2f2e2f580], 0
je 0x2f2bc6950
nop dword [rax + rax]
call fcn.2f2b6a660
mov qword [r11], r9
mov rdi, qword [rax + rsi]
mov qword [r11 + 8], rdi
mov qword [rax + rsi], r9
jmp 0x2f2bc6959
mov rdx, rsi
mov rcx, rbx
mov rbx, rdx
add rsp, 0x98
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.2f2b68700
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.2f2bc6500