Function at 0x40e1e4
Capabilities:
Print debug messages

Disassembly:
push ebx
push esi
push edi
push ebp
push ecx
call fcn.00408f38
test al, al
je 0x40e503
push 0x40e50c
call sub.ntdll.dll_DbgPrint
pop ecx
mov eax, 0x40
call fcn.00408b1c
mov edi, eax
mov edx, 0x40e54c
mov eax, 0x40e55c
mov ecx, edi
call fcn.00408968
cmp word [edi], 0
jne 0x40e23b
push 0x40e5cc
call sub.ntdll.dll_DbgPrint
pop ecx
mov eax, edi
call fcn.00408b30
jmp 0x40e503
mov ecx, esp
mov edx, 0x40e5ec
mov eax, 0x40e55c
call fcn.004088ac
test byte [esp + 3], 0x80
je 0x40e25f
mov eax, edi
call fcn.00408b30
jmp 0x40e503
mov ecx, esp
mov edx, 0x40e5fc
mov eax, 0x40e55c
call fcn.004088ac
cmp dword [esp], 1
jne 0x40e28d
push 0x40e618
call sub.ntdll.dll_DbgPrint
pop ecx
mov eax, edi
call fcn.00408b30
jmp 0x40e503
mov eax, 0x20
call fcn.00408b1c
mov ebp, eax
push 0x20
push ebp
call sub.ntdll.dll_RtlZeroMemory
mov edx, 0x20
mov eax, ebp
call fcn.00409020
push ebp
push 0x40e650
call sub.ntdll.dll_DbgPrint
add esp, 8
mov eax, pe_nt_image_headers32
call fcn.00408b1c
mov esi, eax
mov eax, 0x40
call fcn.00408b1c
mov ebx, eax
push edi
push ebx
call sub.ntdll.dll_wcscpy
add esp, 8
mov eax, ebx
call fcn.00408348
mov eax, ebx
call fcn.00408300
push 0x40e660
push ebx
call sub.ntdll.dll_wcscat
add esp, 8
mov eax, ebx
call fcn.004084d0
test al, al
jne 0x40e31e
push ebx
push 0x40e66c
call sub.ntdll.dll_DbgPrint
add esp, 8
mov edx, 0x90
mov eax, ebx
call fcn.00409ab0
mov cl, 1
mov edx, 6
mov eax, ebx
call fcn.00408dbc
push ebp
push esi
call sub.ntdll.dll_wcscpy
add esp, 8
mov eax, esi
call fcn.00408348
mov eax, esi
call fcn.00408300
mov eax, dword [0x4123c0]
cmp byte [eax], 5
jne 0x40e35e
push 0x40e684
push esi
call sub.ntdll.dll_wcscat
add esp, 8
jmp 0x40e36c
push 0x40e734
push esi
call sub.ntdll.dll_wcscat
add esp, 8
push edi
push ebx
call sub.ntdll.dll_wcscpy
add esp, 8
mov eax, ebx
call fcn.00408348
mov eax, ebx
call fcn.00408300
push 0x40e660
push ebx
call sub.ntdll.dll_wcscat
add esp, 8
push 0x40e7e4
push ebx
call sub.ntdll.dll_wcscat
add esp, 8
mov eax, ebx
call fcn.00408b44
test al, al
jne 0x40e3b4
mov edx, ebx
mov eax, esi
call fcn.00409b84
mov eax, esi
call fcn.0040a3f4
mov ecx, 0x40e7fc
mov edx, ebx
mov eax, esi
call fcn.00409560
push ebp
push esi
call sub.ntdll.dll_wcscpy
add esp, 8
mov eax, esi
call fcn.00408348
mov eax, esi
call fcn.00408300
mov eax, dword [0x4123c0]
cmp byte [eax], 5
jne 0x40e3fb
push 0x40e810
push esi
call sub.ntdll.dll_wcscat
add esp, 8
jmp 0x40e409
push 0x40e8c0
push esi
call sub.ntdll.dll_wcscat
add esp, 8
push edi
push ebx
call sub.ntdll.dll_wcscpy
add esp, 8
mov eax, ebx
call fcn.00408348
mov eax, ebx
call fcn.00408300
push 0x40e660
push ebx
call sub.ntdll.dll_wcscat
add esp, 8
push 0x40e970
push ebx
call sub.ntdll.dll_wcscat
add esp, 8
mov eax, ebx
call fcn.00408b44
test al, al
jne 0x40e451
mov edx, ebx
mov eax, esi
call fcn.00409b84
mov eax, esi
call fcn.0040a3f4
mov ecx, 0x40e988
mov edx, ebx
mov eax, esi
call fcn.00409560
push ebp
push esi
call sub.ntdll.dll_wcscpy
add esp, 8
mov eax, esi
call fcn.00408348
mov eax, esi
call fcn.00408300
mov eax, dword [0x4123c0]
cmp byte [eax], 5
jne 0x40e498
push 0x40e99c
push esi
call sub.ntdll.dll_wcscat
add esp, 8
jmp 0x40e4a6
push 0x40ea48
push esi
call sub.ntdll.dll_wcscat
add esp, 8
push edi
push ebx
call sub.ntdll.dll_wcscpy
add esp, 8
mov eax, ebx
call fcn.00408348
mov eax, ebx
call fcn.00408300
push 0x40e660
push ebx
call sub.ntdll.dll_wcscat
add esp, 8
push 0x40eb08
push ebx
call sub.ntdll.dll_wcscat
add esp, 8
mov eax, ebx
call fcn.00408b44
test al, al
jne 0x40e4ee
mov edx, ebx
mov eax, esi
call fcn.00409b84
mov eax, esi
call fcn.0040a3f4
mov ecx, 0x40eb1c
mov edx, ebx
mov eax, esi
call fcn.00409560
pop edx
pop ebp
pop edi
pop esi
pop ebx
ret