Function at 0x402840
Capabilities:
Inspect section memory permissions

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x40328e
push rbp
mov rbp, rsp
sub rsp, 0x58
lea rax, [0x004988c0]
call fcn.0040ec80
mov qword [rax + 8], 3
lea rcx, [0x004ab13d]
mov qword [rax], rcx
lea rcx, [0x005b4f61]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x28], 3
lea rcx, [0x004ab140]
mov qword [rax + 0x20], rcx
lea rcx, [0x005b4f60]
mov qword [rax + 0x30], rcx
mov qword [rax + 0x48], 4
lea rcx, [0x004ab20c]
mov qword [rax + 0x40], rcx
lea rcx, [0x005b4f69]
mov qword [rax + 0x50], rcx
mov qword [rax + 0x68], 9
lea rcx, [0x004ab9e0]
mov qword [rax + 0x60], rcx
lea rcx, [0x005b4f6c]
mov qword [rax + 0x70], rcx
mov qword [rax + 0x88], 6
lea rcx, [0x004ab438]
mov qword [rax + 0x80], rcx
lea rcx, [0x005b4f6e]
mov qword [rax + 0x90], rcx
mov qword [rax + 0xa8], 3
lea rcx, [0x004ab143]
mov qword [rax + 0xa0], rcx
lea rcx, [0x005b4f6f]
mov qword [rax + 0xb0], rcx
mov qword [0x0052de78], 6
mov qword [0x0052de80], 6
cmp dword [0x005b4a50], 0
je 0x402955
call fcn.00466880
mov qword [r11], rax
mov rcx, qword [0x0052de70]
mov qword [r11 + 8], rcx
mov qword [0x0052de70], rax
nop dword [rax]
call fcn.00403300
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x48], eax
nop
cmp eax, 2
jge 0x402b92
mov rcx, qword [0x0052de80]
mov rbx, qword [0x0052de78]
add rbx, 5
mov rdx, qword [0x0052de70]
cmp rcx, rbx
jae 0x4029ec
mov rax, rdx
mov edi, 5
lea rsi, [0x004a30a0]
call fcn.0044cf60
mov qword [0x0052de80], rcx
cmp dword [0x005b4a50], 0
je 0x4029de
call fcn.00466880
mov qword [r11], rax
mov rdx, qword [0x0052de70]
mov qword [r11 + 8], rdx
mov qword [0x0052de70], rax
mov rdx, rax
mov eax, dword [rsp + 0x48]
mov qword [0x0052de78], rbx
lea r8, [rbx - 5]
shl r8, 5
mov qword [rdx + r8 + 8], 6
mov byte [rdx + r8 + 0x18], 0
mov byte [rdx + r8 + 0x19], 0
cmp dword [0x005b4a50], 0
je 0x402a31
mov r9, qword [rdx + r8]
nop dword [rax]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x10]
mov qword [r11 + 8], r9
lea r9, [0x004ab43e]
mov qword [rdx + r8], r9
lea r9, [0x005b4f6d]
mov qword [rdx + r8 + 0x10], r9
mov qword [rdx + r8 + 0x28], 4
mov byte [rdx + r8 + 0x38], 0
mov byte [rdx + r8 + 0x39], 0
cmp dword [0x005b4a50], 0
je 0x402a7c
mov r9, qword [rdx + r8 + 0x20]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x30]
mov qword [r11 + 8], r9
lea r9, [0x004ab210]
mov qword [rdx + r8 + 0x20], r9
lea r9, [0x005b4f70]
mov qword [rdx + r8 + 0x30], r9
mov qword [rdx + r8 + 0x48], 5
mov byte [rdx + r8 + 0x58], 0
mov byte [rdx + r8 + 0x59], 0
cmp dword [0x005b4a50], 0
je 0x402ac8
mov r9, qword [rdx + r8 + 0x40]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x50]
mov qword [r11 + 8], r9
lea r9, [0x004ab315]
mov qword [rdx + r8 + 0x40], r9
lea r9, [0x005b4f72]
mov qword [rdx + r8 + 0x50], r9
mov qword [rdx + r8 + 0x68], 5
mov byte [rdx + r8 + 0x78], 0
mov byte [rdx + r8 + 0x79], 0
cmp dword [0x005b4a50], 0
je 0x402b14
mov r9, qword [rdx + r8 + 0x60]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x70]
mov qword [r11 + 8], r9
lea r9, [0x004ab31a]
mov qword [rdx + r8 + 0x60], r9
lea r9, [0x005b4f73]
mov qword [rdx + r8 + 0x70], r9
mov qword [rdx + r8 + 0x88], 5
mov byte [rdx + r8 + 0x98], 0
mov byte [rdx + r8 + 0x99], 0
cmp dword [0x005b4a50], 0
je 0x402b74
mov r9, qword [rdx + r8 + 0x80]
nop dword [rax + rax]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x90]
mov qword [r11 + 8], r9
lea r9, [0x004ab31f]
mov qword [rdx + r8 + 0x80], r9
lea r9, [0x005b4f71]
mov qword [rdx + r8 + 0x90], r9
cmp eax, 3
jge 0x402da2
mov rcx, qword [0x0052de80]
mov rbx, qword [0x0052de78]
add rbx, 5
mov rdx, qword [0x0052de70]
cmp rcx, rbx
jae 0x402c01
mov rax, rdx
mov edi, 5
lea rsi, [0x004a30a0]
call fcn.0044cf60
mov qword [0x0052de80], rcx
cmp dword [0x005b4a50], 0
je 0x402bf3
nop dword [rax]
call fcn.00466880
mov qword [r11], rax
mov rdx, qword [0x0052de70]
mov qword [r11 + 8], rdx
mov qword [0x0052de70], rax
mov rdx, rax
mov eax, dword [rsp + 0x48]
mov qword [0x0052de78], rbx
lea r8, [rbx - 5]
shl r8, 5
mov qword [rdx + r8 + 8], 3
mov byte [rdx + r8 + 0x18], 0
mov byte [rdx + r8 + 0x19], 0
cmp dword [0x005b4a50], 0
je 0x402c43
mov r9, qword [rdx + r8]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x10]
mov qword [r11 + 8], r9
lea r9, [0x004ab146]
mov qword [rdx + r8], r9
lea r9, [0x005b4f62]
mov qword [rdx + r8 + 0x10], r9
mov qword [rdx + r8 + 0x28], 4
mov byte [rdx + r8 + 0x38], 0
mov byte [rdx + r8 + 0x39], 0
cmp dword [0x005b4a50], 0
je 0x402c91
mov r9, qword [rdx + r8 + 0x20]
nop dword [rax]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x30]
mov qword [r11 + 8], r9
lea r9, [0x004ab214]
mov qword [rdx + r8 + 0x20], r9
lea r9, [0x005b4f63]
mov qword [rdx + r8 + 0x30], r9
mov qword [rdx + r8 + 0x48], 4
mov byte [rdx + r8 + 0x58], 0
mov byte [rdx + r8 + 0x59], 0
cmp dword [0x005b4a50], 0
je 0x402cdd
mov r9, qword [rdx + r8 + 0x40]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x50]
mov qword [r11 + 8], r9
lea r9, [0x004ab218]
mov qword [rdx + r8 + 0x40], r9
lea r9, [0x005b4f67]
mov qword [rdx + r8 + 0x50], r9
mov qword [rdx + r8 + 0x68], 4
mov byte [rdx + r8 + 0x78], 0
mov byte [rdx + r8 + 0x79], 0
cmp dword [0x005b4a50], 0
je 0x402d29
mov r9, qword [rdx + r8 + 0x60]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x70]
mov qword [r11 + 8], r9
lea r9, [0x004ab21c]
mov qword [rdx + r8 + 0x60], r9
lea r9, [0x005b4f68]
mov qword [rdx + r8 + 0x70], r9
mov qword [rdx + r8 + 0x88], 3
mov byte [rdx + r8 + 0x98], 0
mov byte [rdx + r8 + 0x99], 0
cmp dword [0x005b4a50], 0
je 0x402d84
mov r9, qword [rdx + r8 + 0x80]
call fcn.00466880
mov qword [r11], r9
mov r9, qword [rdx + r8 + 0x90]
mov qword [r11 + 8], r9
lea r9, [0x004ab149]
mov qword [rdx + r8 + 0x80], r9
lea r9, [0x005b4f6a]
mov qword [rdx + r8 + 0x90], r9
cmp eax, 4
jge 0x402ef3
mov rcx, qword [0x0052de80]
mov rbx, qword [0x0052de78]
add rbx, 3
mov rax, qword [0x0052de70]
cmp rcx, rbx
jae 0x402e04
mov edi, 3
lea rsi, [0x004a30a0]
call fcn.0044cf60
mov qword [0x0052de80], rcx
cmp dword [0x005b4a50], 0
je 0x402dfd
call fcn.00466880
mov qword [r11], rax
mov rcx, qword [0x0052de70]
mov qword [r11 + 8], rcx
mov qword [0x0052de70], rax
mov qword [0x0052de78], rbx
lea rcx, [rbx - 3]
shl rcx, 5
mov qword [rax + rcx + 8], 7
mov byte [rax + rcx + 0x18], 0
mov byte [rax + rcx + 0x19], 0
cmp dword [0x005b4a50], 0
je 0x402e44
mov rdx, qword [rax + rcx]
call fcn.00466880
mov qword [r11], rdx
mov rdx, qword [rax + rcx + 0x10]
mov qword [r11 + 8], rdx
lea rdx, [0x004ab5a2]
mov qword [rax + rcx], rdx
lea rdx, [0x005b4f64]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x28], 8
mov byte [rax + rcx + 0x38], 0
mov byte [rax + rcx + 0x39], 0
cmp dword [0x005b4a50], 0
je 0x402e91
mov rdx, qword [rax + rcx + 0x20]
nop dword [rax]
call fcn.00466880
mov qword [r11], rdx
mov rdx, qword [rax + rcx + 0x30]
mov qword [r11 + 8], rdx
lea rdx, [0x004ab799]
mov qword [rax + rcx + 0x20], rdx
lea rdx, [0x005b4f65]
mov qword [rax + rcx + 0x30], rdx
mov qword [rax + rcx + 0x48], 8
mov byte [rax + rcx + 0x58], 0
mov byte [rax + rcx + 0x59], 0
cmp dword [0x005b4a50], 0
je 0x402edb
mov rdx, qword [rax + rcx + 0x40]
call fcn.00466880
mov qword [r11], rdx
mov rdx, qword [rax + rcx + 0x50]
mov qword [r11 + 8], rdx
lea rdx, [0x004ab7a1]
mov qword [rax + rcx + 0x40], rdx
lea rdx, [0x005b4f66]
mov qword [rax + rcx + 0x50], rdx
mov qword [rsp], 0
nop dword [rax + rax]
call fcn.004032c0
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp + 8]
nop dword [rax + rax]
test eax, eax
je 0x403288
mov dword [rsp + 0x44], eax
mov eax, 0x80000000
mov qword [rsp], rax
call fcn.004032c0
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp + 8]
mov dword [0x005b489c], eax
mov qword [rsp], 1
nop
call fcn.004032c0
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp + 0x10]
mov dword [rsp + 0x4c], eax
mov ebx, 1
call fcn.004032a0
mov byte [0x005b4f70], al
mov eax, dword [rsp + 0x4c]
mov ebx, 2
call fcn.004032a0
mov byte [0x005b4f6c], al
mov eax, dword [rsp + 0x4c]
mov ebx, 0x200
call fcn.004032a0
mov byte [0x005b4f71], al
mov eax, dword [rsp + 0x4c]
mov ebx, 0x80000
call fcn.004032a0
mov byte [0x005b4f72], al
mov eax, dword [rsp + 0x4c]
mov ebx, 0x100000
call fcn.004032a0
mov byte [0x005b4f73], al
mov eax, dword [rsp + 0x4c]
mov ebx, 0x800000
call fcn.004032a0
mov byte [0x005b4f6d], al
mov eax, dword [rsp + 0x4c]
mov ebx, 0x2000000
nop dword [rax]
call fcn.004032a0
mov byte [0x005b4f60], al
mov eax, dword [rsp + 0x4c]
mov ebx, 0x8000000
call fcn.004032a0
mov byte [0x005b4f6b], al
mov eax, dword [rsp + 0x4c]
mov ebx, 0x1000
call fcn.004032a0
test al, al
je 0x40303a
movzx ecx, byte [0x005b4f6b]
jmp 0x40303c
xor ecx, ecx
mov byte [0x005b4f6a], cl
cmp byte [0x005b4f6b], 0
jne 0x403054
xor eax, eax
xor ecx, ecx
jmp 0x4030ef
call fcn.004032e0
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x54], eax
mov ebx, 2
call fcn.004032a0
nop dword [rax]
test al, al
jne 0x403088
xor eax, eax
jmp 0x403096
mov eax, dword [rsp + 0x54]
mov ebx, 4
call fcn.004032a0
mov byte [rsp + 0x43], al
test al, al
jne 0x4030a2
xor ecx, ecx
jmp 0x4030b7
mov eax, dword [rsp + 0x54]
mov ebx, 0x20
call fcn.004032a0
mov ecx, eax
movzx eax, byte [rsp + 0x43]
test cl, cl
jne 0x4030bf
xor ecx, ecx
jmp 0x4030ef
mov eax, dword [rsp + 0x54]
mov ebx, 0x40
call fcn.004032a0
test al, al
jne 0x4030da
movzx eax, byte [rsp + 0x43]
xor ecx, ecx
jmp 0x4030ef
mov eax, dword [rsp + 0x54]
mov ebx, pe_nt_image_headers64
call fcn.004032a0
mov ecx, eax
movzx eax, byte [rsp + 0x43]
mov byte [rsp + 0x42], cl
mov byte [rsp + 0x43], al
mov ebx, 0x10000000
mov eax, dword [rsp + 0x4c]
call fcn.004032a0
movzx ecx, byte [rsp + 0x43]
and eax, ecx
mov byte [0x005b4f62], al
mov edx, dword [rsp + 0x44]
cmp edx, 7
jb 0x403282
mov qword [rsp], 7
call fcn.004032c0
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp + 0xc]
mov dword [rsp + 0x50], eax
mov ebx, 8
call fcn.004032a0
mov byte [0x005b4f67], al
mov eax, dword [rsp + 0x50]
mov ebx, 0x20
nop
call fcn.004032a0
movzx ecx, byte [rsp + 0x43]
and ecx, eax
mov byte [0x005b4f63], cl
mov eax, dword [rsp + 0x50]
mov ebx, 0x100
nop dword [rax + rax]
call fcn.004032a0
mov byte [0x005b4f68], al
mov eax, dword [rsp + 0x50]
mov ebx, 0x200
call fcn.004032a0
mov byte [0x005b4f69], al
mov eax, dword [rsp + 0x50]
mov ebx, 0x80000
call fcn.004032a0
mov byte [0x005b4f61], al
mov eax, dword [rsp + 0x50]
mov ebx, 0x20000000
nop dword [rax]
call fcn.004032a0
mov byte [0x005b4f6f], al
mov eax, dword [rsp + 0x50]
mov ebx, 0x10000
call fcn.004032a0
movzx ecx, byte [rsp + 0x42]
and ecx, eax
mov byte [0x005b4f64], cl
test cl, cl
je 0x403212
mov eax, dword [rsp + 0x50]
mov ebx, 0x40000000
call fcn.004032a0
mov byte [0x005b4f65], al
mov eax, dword [rsp + 0x50]
mov ebx, 0x80000000
call fcn.004032a0
mov byte [0x005b4f66], al
mov eax, 0x80000000
mov qword [rsp], rax
nop dword [rax + rax]
call fcn.004032c0
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp dword [rsp + 8], 0x80000001
nop
jae 0x403248
add rsp, 0x58
pop rbp
ret
mov eax, 0x80000001
mov qword [rsp], rax
call fcn.004032c0
xorps xmm15, xmm15
mov r14, qword [0x005b4a38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp + 0x14]
mov ebx, 0x8000000
call fcn.004032a0
mov byte [0x005b4f6e], al
add rsp, 0x58
pop rbp
ret
add rsp, 0x58
pop rbp
ret
add rsp, 0x58
pop rbp
ret
call fcn.00464940
jmp fcn.00402840