Function at 0x52a1a0
Capabilities:
Map section object
Parse pe header

Disassembly:
sub esp, 0x6c
lea eax, [esp + 0x14]
push ebx
push ebp
push esi
push edi
push 0x60
push 1
push 1
push 0x80
push 0x100021
push ecx
push eax
call sym.SystemInformer.exe_Ordinal_1467
mov ebx, eax
test ebx, ebx
js 0x52a2f8
mov esi, dword [esp + 0x24]
lea eax, [esp + 0x30]
push esi
push 0x1000000
push 0x10
push 0
push eax
push 0xd
lea eax, [esp + 0x28]
mov dword [esp + 0x48], 0x18
push eax
mov dword [esp + 0x50], 0
mov dword [esp + 0x58], 0x20
mov dword [esp + 0x54], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
call dword [sym.imp.ntdll.dll_NtCreateSection]
push esi
mov ebx, eax
call dword [sym.imp.ntdll.dll_NtClose]
test ebx, ebx
js 0x52a2f8
push 0x30
lea eax, [esp + 0x4c]
push 0
push eax
call fcn.005861d0
add esp, 0xc
lea eax, [esp + 0x48]
push 0
push 0x30
push eax
push 1
push dword [esp + 0x20]
call dword [sym.imp.ntdll.dll_NtQuerySection]
mov ebx, eax
test ebx, ebx
js 0x52a272
cmp dword [esp + 0x58], 2
jne 0x52a26d
test dword [esp + 0x64], 0x2002
jne 0x52a289
mov ebx, 0xc000036f
push dword [esp + 0x10]
call dword [sym.imp.ntdll.dll_NtClose]
lfence
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
push 0x10
push 0
push 2
lea eax, [esp + 0x34]
mov dword [esp + 0x20], 0
push eax
push 0
push 0
push 0
lea eax, [esp + 0x30]
mov dword [esp + 0x44], 0
push eax
push 0xffffffffffffffff
push dword [esp + 0x34]
call dword [sym.imp.ntdll.dll_NtMapViewOfSection]
push dword [esp + 0x10]
mov ebx, eax
call dword [sym.imp.ntdll.dll_NtClose]
cmp ebx, 0x40000003
jne 0x52a2da
mov ecx, dword [esp + 0x14]
call fcn.00529f20
mov ebx, eax
test ebx, ebx
js 0x52a2e4
mov edi, dword [esp + 0x14]
jmp 0x52a2f4
push dword [esp + 0x14]
push 0xffffffffffffffff
call dword [sym.imp.ntdll.dll_NtUnmapViewOfSection]
mov edi, dword [esp + 0x2c]
test ebx, ebx
jns 0x52a305
lfence
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
mov ebx, 0x5a4d
cmp word [edi], bx
je 0x52a319
mov ebx, 0xc000012f
jmp 0x52a45b
mov eax, dword ds:[edi + 0x3c]
test eax, eax
je 0x52a456
cmp eax, 0x7fffffff
jae 0x52a456
cmp dword ds:[edi + eax], 0x4550
lea ebp, [edi + eax]
jne 0x52a456
mov ecx, dword [ebp + 0x80]
mov eax, edi
mov dword [esp + 0x18], eax
test ecx, ecx
je 0x52a44d
cmp dword [ebp + 0x84], 0
je 0x52a44d
lea esi, [edi + ecx]
mov edx, ebp
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0x28]
push ecx
push esi
mov ecx, eax
call fcn.005291e0
mov ebx, eax
mov ecx, ebp
test ebx, ebx
js 0x52a45b
lea eax, [esp + 0x1c]
push eax
push 4
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x30]
push eax
push 0xffffffffffffffff
lfence
call dword [sym.imp.ntdll.dll_NtProtectVirtualMemory]
mov ebx, eax
mov ecx, ebp
mov eax, edi
test ebx, ebx
js 0x52a45b
cmp dword [esi + 0xc], 0
mov dword [esp + 0x18], ebp
je 0x52a3e2
mov dword [esp + 0x18], ecx
cmp dword [esi], 0
je 0x52a3e2
push ecx
mov edx, esi
mov ecx, edi
call fcn.00529ac0
mov ebx, eax
test ebx, ebx
js 0x52a3ff
add esi, 0x14
cmp dword [esi + 0xc], 0
jne 0x52a3c2
lea eax, [esp + 0x1c]
push eax
push dword [esp + 0x20]
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x30]
push eax
push 0xffffffffffffffff
call dword [sym.imp.ntdll.dll_NtProtectVirtualMemory]
mov ebx, eax
mov ecx, dword [esp + 0x18]
test ebx, ebx
js 0x52a45b
push ecx
mov edx, ecx
mov ecx, edi
lfence
call fcn.00529c40
mov ebx, eax
test ebx, ebx
js 0x52a45b
mov eax, dword ss:[ebp + 0x28]
test eax, eax
jne 0x52a42b
mov ebx, 0xc0000139
jmp 0x52a45b
xor ebx, ebx
lea esi, [eax + edi]
push ebx
push 1
push edi
mov ecx, esi
lfence
call dword [0x5a9914]
nop
call esi
test al, al
jne 0x52a4a6
mov ebx, 0xc0000142
jmp 0x52a45b
mov ebx, 0xc0000020
mov edi, eax
jmp 0x52a45b
mov ebx, 0xc000007b
mov eax, 0x5a4d
cmp word [edi], ax
jne 0x52a4a6
lfence
mov eax, dword [edi + 0x3c]
test eax, eax
je 0x52a4a6
cmp eax, 0x7fffffff
jae 0x52a4a6
cmp dword [eax + edi], 0x4550
jne 0x52a4a6
mov eax, dword [eax + edi + 0x28]
test eax, eax
je 0x52a4a6
push 0
lea esi, [eax + edi]
push 0
push edi
mov ecx, esi
lfence
call dword [0x5a9914]
call esi
push edi
push 0xffffffffffffffff
call dword [sym.imp.ntdll.dll_NtUnmapViewOfSection]
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x6c
ret