Function at 0x4b28e0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50bcb3
mov eax, dword fs:[0]
push eax
sub esp, 0xc30
mov eax, dword [0x54c154]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0xc20], ebx
mov esi, dword [ebp + 8]
xor eax, eax
mov dword [ebp - 0xc24], ebx
mov dword [ebx + 4], 0
mov dword [ebx + 8], 2
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x24], 7
mov word [ebx + 0x10], ax
mov dword [ebp - 4], eax
lea ecx, [ebx + 0x3c]
mov dword [ebx + 0x34], eax
lea eax, [ebx + 0x38]
push 0x20
push 0x512608
mov dword [ebx + 0x28], 0xffffffff
mov dword [ebx + 0x2c], 0xffffffff
mov dword [ebx + 0x30], 2
mov dword [eax], 0
mov dword [ecx], 0x54534348
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x48], 0
mov dword [ebx], eax
push 0x513880
mov dword [ebx + 4], ecx
call fcn.004e6d3e
mov edi, eax
add esp, 0xc
mov dword [ebp - 0xc1c], edi
test edi, edi
jne 0x4b2a45
push 0x400
lea eax, [ebp - 0xc10]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x4b2cf8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x4b2cf8
lea eax, [ebp - 0xc10]
push 0x5c
push eax
call fcn.004d739e
add esp, 8
test eax, eax
je 0x4b2cf8
xor ecx, ecx
push str.dbg_trace.ini
mov word [eax + 2], cx
lea eax, [ebp - 0xc10]
push 0x400
push eax
call fcn.004daaae
push 0x20
lea eax, [ebp - 0xc10]
push 0x512608
push eax
call fcn.004e6d3e
mov edi, eax
mov dword [ebp - 0xc1c], eax
add esp, 0x18
test edi, edi
je 0x4b2cf8
mov eax, 1
jmp 0x4b2a47
xor eax, eax
push 0x400
mov dword [ebx + 8], eax
lea eax, [ebp - 0x410]
push 0
push eax
call fcn.004d78d0
add esp, 0xc
mov byte [ebp - 0xc11], 0
test esi, esi
mov byte [ebp - 0xc12], 0
mov eax, str.DLLPROTECT
cmovne eax, esi
mov esi, eax
mov dword [ebp - 0xc20], eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x4b2a83
push edi
lea eax, [ebp - 0x410]
sub esi, ecx
push 0x3ff
push eax
mov dword [ebp - 0xc18], esi
call fcn.004ebc46
add esp, 0xc
test eax, eax
je 0x4b2cef
nop
push esi
push dword [ebp - 0xc20]
lea eax, [ebp - 0x410]
push eax
call fcn.004eba4d
add esp, 0xc
test eax, eax
je 0x4b2dc7
push 1
lea eax, [ebp - 0x410]
push 0x512588
push eax
call fcn.004eba4d
add esp, 0xc
test eax, eax
je 0x4b2dc7
push 3
lea eax, [ebp - 0x410]
push 0x5138c8
push eax
call fcn.004eba4d
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x410]
jne 0x4b2b38
push 0x3d
push eax
call fcn.004d77a0
add esp, 8
test eax, eax
je 0x4b2cd2
mov ecx, dword [ebx + 4]
mov edx, dword [ecx]
test edx, edx
je 0x4b2cd2
mov eax, dword [eax + 1]
xor eax, edx
mov dword [ecx], eax
jmp 0x4b2cd2
push 4
push str.root
push eax
call fcn.004eba4d
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x410]
jne 0x4b2bea
push 0x3d
push eax
call fcn.004d77a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4b2cd2
mov al, byte [ecx + 1]
inc ecx
mov edx, ecx
cmp al, 0xa
je 0x4b2b85
cmp al, 0xd
je 0x4b2b85
test al, al
je 0x4b2b85
mov al, byte [ecx + 1]
inc ecx
cmp al, 0xa
jne 0x4b2b75
push edx
lea eax, [ebp - 0xc3c]
mov byte [ecx], 0
push eax
call fcn.004c8090
add esp, 8
lea ecx, [ebx + 0x10]
push eax
call fcn.0040f190
mov edx, dword [ebp - 0xc28]
cmp edx, 8
jb 0x4b2cd2
mov ecx, dword [ebp - 0xc3c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4b2bdb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4b2e15
push edx
push ecx
call fcn.004a44fe
add esp, 8
jmp 0x4b2cd2
push 4
push str.size
push eax
call fcn.004eba4d
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x410]
jne 0x4b2d18
push 0x3d
push eax
call fcn.004d77a0
mov esi, eax
add esp, 8
test esi, esi
je 0x4b2ccc
lea eax, [ebp - 0x410]
push 0x2e
push eax
call fcn.004d77a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4b2c5c
inc ecx
mov byte [esi], 0
mov eax, esi
sub eax, ecx
push eax
push str.DLLPROTECT
push ecx
call fcn.004eba4d
add esp, 0xc
test eax, eax
jne 0x4b2ccc
mov byte [ebp - 0xc11], 1
jmp 0x4b2c65
cmp byte [ebp - 0xc11], 0
jne 0x4b2ccc
mov al, byte [esi + 1]
inc esi
mov edx, esi
cmp al, 0x30
jl 0x4b2c86
mov cl, al
mov al, cl
cmp cl, 0x39
ja 0x4b2c86
test cl, cl
je 0x4b2c86
mov al, byte [esi + 1]
inc esi
mov cl, al
cmp al, 0x30
jge 0x4b2c71
mov edi, 1
cmp al, 0x4b
jne 0x4b2c96
mov edi, 0x400
jmp 0x4b2caa
cmp al, 0x4d
jne 0x4b2ca1
mov edi, 0x100000
jmp 0x4b2caa
cmp al, 0x47
jne 0x4b2caa
mov edi, 0x40000000
push edx
mov byte [esi], 0
call fcn.004e5988
add esp, 4
push 0
push edi
push edx
push eax
call fcn.004a50d0
mov edi, dword [ebp - 0xc1c]
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x2c], edx
mov esi, dword [ebp - 0xc18]
push edi
lea eax, [ebp - 0x410]
push 0x3ff
push eax
call fcn.004ebc46
add esp, 0xc
test eax, eax
jne 0x4b2ab0
push edi
call fcn.004e3a95
add esp, 4
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004a44cd
mov esp, ebp
pop ebp
ret 4
push 6
push str.number
push eax
call fcn.004eba4d
add esp, 0xc
test eax, eax
jne 0x4b2cd2
lea eax, [ebp - 0x410]
push 0x3d
push eax
call fcn.004d77a0
mov esi, eax
add esp, 8
test esi, esi
je 0x4b2ccc
lea eax, [ebp - 0x410]
push 0x2e
push eax
call fcn.004d77a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4b2d82
inc ecx
mov byte [esi], 0
mov eax, esi
sub eax, ecx
push eax
push str.DLLPROTECT
push ecx
call fcn.004eba4d
add esp, 0xc
test eax, eax
jne 0x4b2ccc
mov byte [ebp - 0xc12], 1
jmp 0x4b2d8f
cmp byte [ebp - 0xc12], 0
jne 0x4b2ccc
mov al, byte [esi + 1]
inc esi
mov ecx, esi
cmp al, 0x30
jl 0x4b2db0
nop dword [eax]
cmp al, 0x39
ja 0x4b2db0
test al, al
je 0x4b2db0
mov al, byte [esi + 1]
inc esi
cmp al, 0x30
jge 0x4b2da0
push ecx
mov byte [esi], 0
call fcn.004e5988
add esp, 4
mov dword [ebx + 0x30], eax
mov dword [ebx + 0x34], edx
jmp 0x4b2ccc
lea eax, [ebp - 0x410]
push 0x3d
push eax
call fcn.004d77a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x4b2cd2
mov al, byte [ecx + 1]
inc ecx
mov edx, ecx
cmp al, 0x30
jl 0x4b2e00
nop dword [eax]
cmp al, 0x39
ja 0x4b2e00
test al, al
je 0x4b2e00
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
jge 0x4b2df0
push edx
mov byte [ecx], 0
call fcn.004e5965
mov ecx, dword [ebx]
add esp, 4
mov dword [ecx], eax
jmp 0x4b2cd2
call fcn.004da7c4
int3