Function at 0x469ef0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4d7073
mov eax, dword fs:[0]
push eax
sub esp, 0xc30
mov eax, dword [0x507254]
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 0x4dc98c
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 0x4dc990
mov dword [ebx + 4], ecx
call fcn.004b855a
mov edi, eax
add esp, 0xc
mov dword [ebp - 0xc1c], edi
test edi, edi
jne 0x46a055
push 0x400
lea eax, [ebp - 0xc10]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x46a308
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x46a308
lea eax, [ebp - 0xc10]
push 0x5c
push eax
call fcn.004a7ff0
add esp, 8
test eax, eax
je 0x46a308
xor ecx, ecx
push str.dbg_trace.ini
mov word [eax + 2], cx
lea eax, [ebp - 0xc10]
push 0x400
push eax
call fcn.004acb51
push 0x20
lea eax, [ebp - 0xc10]
push 0x4dc98c
push eax
call fcn.004b855a
mov edi, eax
mov dword [ebp - 0xc1c], eax
add esp, 0x18
test edi, edi
je 0x46a308
mov eax, 1
jmp 0x46a057
xor eax, eax
push 0x400
mov dword [ebx + 8], eax
lea eax, [ebp - 0x410]
push 0
push eax
call fcn.004a8a30
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 0x46a093
push edi
lea eax, [ebp - 0x410]
sub esi, ecx
push 0x3ff
push eax
mov dword [ebp - 0xc18], esi
call fcn.004b8628
add esp, 0xc
test eax, eax
je 0x46a2ff
nop
push esi
push dword [ebp - 0xc20]
lea eax, [ebp - 0x410]
push eax
call fcn.004b82fa
add esp, 0xc
test eax, eax
je 0x46a3d7
push 1
lea eax, [ebp - 0x410]
push 0x4dc7fc
push eax
call fcn.004b82fa
add esp, 0xc
test eax, eax
je 0x46a3d7
push 3
lea eax, [ebp - 0x410]
push 0x4dc9d8
push eax
call fcn.004b82fa
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x410]
jne 0x46a148
push 0x3d
push eax
call fcn.004a80a0
add esp, 8
test eax, eax
je 0x46a2e2
mov ecx, dword [ebx + 4]
mov edx, dword [ecx]
test edx, edx
je 0x46a2e2
mov eax, dword [eax + 1]
xor eax, edx
mov dword [ecx], eax
jmp 0x46a2e2
push 4
push str.root
push eax
call fcn.004b82fa
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x410]
jne 0x46a1fa
push 0x3d
push eax
call fcn.004a80a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x46a2e2
mov al, byte [ecx + 1]
inc ecx
mov edx, ecx
cmp al, 0xa
je 0x46a195
cmp al, 0xd
je 0x46a195
test al, al
je 0x46a195
mov al, byte [ecx + 1]
inc ecx
cmp al, 0xa
jne 0x46a185
push edx
lea eax, [ebp - 0xc3c]
mov byte [ecx], 0
push eax
call fcn.00480d20
add esp, 8
lea ecx, [ebx + 0x10]
push eax
call fcn.00402f80
mov edx, dword [ebp - 0xc28]
cmp edx, 8
jb 0x46a2e2
mov ecx, dword [ebp - 0xc3c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x46a1eb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x46a425
push edx
push ecx
call fcn.004a6287
add esp, 8
jmp 0x46a2e2
push 4
push str.size
push eax
call fcn.004b82fa
add esp, 0xc
test eax, eax
lea eax, [ebp - 0x410]
jne 0x46a328
push 0x3d
push eax
call fcn.004a80a0
mov esi, eax
add esp, 8
test esi, esi
je 0x46a2dc
lea eax, [ebp - 0x410]
push 0x2e
push eax
call fcn.004a80a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x46a26c
inc ecx
mov byte [esi], 0
mov eax, esi
sub eax, ecx
push eax
push str.DLLPROTECT
push ecx
call fcn.004b82fa
add esp, 0xc
test eax, eax
jne 0x46a2dc
mov byte [ebp - 0xc11], 1
jmp 0x46a275
cmp byte [ebp - 0xc11], 0
jne 0x46a2dc
mov al, byte [esi + 1]
inc esi
mov edx, esi
cmp al, 0x30
jl 0x46a296
mov cl, al
mov al, cl
cmp cl, 0x39
ja 0x46a296
test cl, cl
je 0x46a296
mov al, byte [esi + 1]
inc esi
mov cl, al
cmp al, 0x30
jge 0x46a281
mov edi, 1
cmp al, 0x4b
jne 0x46a2a6
mov edi, 0x400
jmp 0x46a2ba
cmp al, 0x4d
jne 0x46a2b1
mov edi, 0x100000
jmp 0x46a2ba
cmp al, 0x47
jne 0x46a2ba
mov edi, 0x40000000
push edx
mov byte [esi], 0
call fcn.004b8481
add esp, 4
push 0
push edi
push edx
push eax
call fcn.004a6be0
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.004b8628
add esp, 0xc
test eax, eax
jne 0x46a0c0
push edi
call fcn.004ac6c3
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.004a6256
mov esp, ebp
pop ebp
ret 4
push 6
push str.number
push eax
call fcn.004b82fa
add esp, 0xc
test eax, eax
jne 0x46a2e2
lea eax, [ebp - 0x410]
push 0x3d
push eax
call fcn.004a80a0
mov esi, eax
add esp, 8
test esi, esi
je 0x46a2dc
lea eax, [ebp - 0x410]
push 0x2e
push eax
call fcn.004a80a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x46a392
inc ecx
mov byte [esi], 0
mov eax, esi
sub eax, ecx
push eax
push str.DLLPROTECT
push ecx
call fcn.004b82fa
add esp, 0xc
test eax, eax
jne 0x46a2dc
mov byte [ebp - 0xc12], 1
jmp 0x46a39f
cmp byte [ebp - 0xc12], 0
jne 0x46a2dc
mov al, byte [esi + 1]
inc esi
mov ecx, esi
cmp al, 0x30
jl 0x46a3c0
nop dword [eax]
cmp al, 0x39
ja 0x46a3c0
test al, al
je 0x46a3c0
mov al, byte [esi + 1]
inc esi
cmp al, 0x30
jge 0x46a3b0
push ecx
mov byte [esi], 0
call fcn.004b8481
add esp, 4
mov dword [ebx + 0x30], eax
mov dword [ebx + 0x34], edx
jmp 0x46a2dc
lea eax, [ebp - 0x410]
push 0x3d
push eax
call fcn.004a80a0
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x46a2e2
mov al, byte [ecx + 1]
inc ecx
mov edx, ecx
cmp al, 0x30
jl 0x46a410
nop dword [eax]
cmp al, 0x39
ja 0x46a410
test al, al
je 0x46a410
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x30
jge 0x46a400
push edx
mov byte [ecx], 0
call fcn.004b845e
mov ecx, dword [ebx]
add esp, 4
mov dword [ecx], eax
jmp 0x46a2e2
call fcn.004ab23f
int3