Function at 0x401590
Capabilities:
Access the windows event log

Disassembly:
mov ecx, dword [esp + 0xc]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x14]
push edi
push ecx
push esi
mov eax, dword [esi]
call dword [eax + 0x29c]
mov edx, dword [esi]
push esi
mov ebp, eax
call dword [edx + 0x390]
cmp al, 1
jne 0x4015f1
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push 0
push eax
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push ecx
mov dword [esp + 0x3c], str.Could_not_create_a_string_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov edx, dword [esi]
push esi
call dword [edx + 0x40]
mov eax, dword [esi]
push esi
call dword [eax + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test ebp, ebp
jne 0x401621
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push ebp
push ecx
push ebp
push 1
push ebp
push 0xc0001000
push ebp
push 1
push edx
mov dword [esp + 0x3c], str.Could_not_create_a_string_for_System.out_path.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
mov eax, dword [esi]
push str.java_io_FileOutputStream
push esi
call dword [eax + 0x18]
mov ecx, dword [esi]
push esi
mov edi, eax
call dword [ecx + 0x390]
cmp al, 1
jne 0x401677
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push 0
push edx
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push eax
mov dword [esp + 0x3c], str.Could_not_find_the_FileOutputStream_class_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov ecx, dword [esi]
push esi
call dword [ecx + 0x40]
mov edx, dword [esi]
push esi
call dword [edx + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test edi, edi
jne 0x4016a7
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push edi
push eax
push edi
push 1
push edi
push 0xc0001000
push edi
push 1
push ecx
mov dword [esp + 0x3c], str.Could_not_find_the_FileOutputStream_class_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
mov edx, dword [esi]
push str._Ljava_lang_String__V
push str._init_
push edi
push esi
call dword [edx + 0x84]
mov ebx, eax
mov eax, dword [esi]
push esi
call dword [eax + 0x390]
cmp al, 1
jne 0x401706
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push edx
mov dword [esp + 0x3c], str.Could_not_find_the_FileOutputStream_constructor_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov eax, dword [esi]
push esi
call dword [eax + 0x40]
mov ecx, dword [esi]
push esi
call dword [ecx + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test ebx, ebx
jne 0x401736
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push ebx
push edx
push ebx
push 1
push ebx
push 0xc0001000
push ebx
push 1
push eax
mov dword [esp + 0x3c], str.Could_not_find_the_FileOutputStream_constructor_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
push ebp
push ebx
push edi
push esi
call fcn.00401ad0
mov ecx, dword [esi]
add esp, 0x10
mov ebp, eax
push esi
call dword [ecx + 0x390]
cmp al, 1
jne 0x40178d
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push 0
push edx
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push eax
mov dword [esp + 0x3c], str.Could_not_create_a_FileOutputStream_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov ecx, dword [esi]
push esi
call dword [ecx + 0x40]
mov edx, dword [esi]
push esi
call dword [edx + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test ebp, ebp
jne 0x4017bd
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push ebp
push eax
push ebp
push 1
push ebp
push 0xc0001000
push ebp
push 1
push ecx
mov dword [esp + 0x3c], str.Could_not_create_a_FileOutputStream_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
mov edx, dword [esi]
push str.java_io_PrintStream
push esi
call dword [edx + 0x18]
mov edi, eax
mov eax, dword [esi]
push esi
call dword [eax + 0x390]
cmp al, 1
jne 0x401813
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push edx
mov dword [esp + 0x3c], str.Could_not_find_the_PrintStream_class.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov eax, dword [esi]
push esi
call dword [eax + 0x40]
mov ecx, dword [esi]
push esi
call dword [ecx + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test edi, edi
jne 0x401843
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push edi
push edx
push edi
push 1
push edi
push 0xc0001000
push edi
push 1
push eax
mov dword [esp + 0x3c], str.Could_not_find_the_PrintStream_class.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
mov ecx, dword [esi]
push str._Ljava_io_OutputStream__V
push str._init_
push edi
push esi
call dword [ecx + 0x84]
mov edx, dword [esi]
push esi
mov ebx, eax
call dword [edx + 0x390]
cmp al, 1
jne 0x4018a2
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push 0
push eax
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push ecx
mov dword [esp + 0x3c], str.Could_not_find_the_PrintStream_constructor_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov edx, dword [esi]
push esi
call dword [edx + 0x40]
mov eax, dword [esi]
push esi
call dword [eax + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test ebx, ebx
jne 0x4018d2
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push ebx
push ecx
push ebx
push 1
push ebx
push 0xc0001000
push ebx
push 1
push edx
mov dword [esp + 0x3c], str.Could_not_find_the_PrintStream_constructor_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
push ebp
push ebx
push edi
push esi
call fcn.00401ad0
add esp, 0x10
mov ebp, eax
mov eax, dword [esi]
push esi
call dword [eax + 0x390]
cmp al, 1
jne 0x401929
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push edx
mov dword [esp + 0x3c], str.Could_not_create_a_PrintStream_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov eax, dword [esi]
push esi
call dword [eax + 0x40]
mov ecx, dword [esi]
push esi
call dword [ecx + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test ebp, ebp
jne 0x401959
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push ebp
push edx
push ebp
push 1
push ebp
push 0xc0001000
push ebp
push 1
push eax
mov dword [esp + 0x3c], str.Could_not_create_a_PrintStream_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
mov ecx, dword [esi]
push str.java_lang_System
push esi
call dword [ecx + 0x18]
mov edx, dword [esi]
push esi
mov edi, eax
call dword [edx + 0x390]
cmp al, 1
jne 0x4019af
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push 0
push eax
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push ecx
mov dword [esp + 0x3c], str.Could_not_find_the_System_class_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov edx, dword [esi]
push esi
call dword [edx + 0x40]
mov eax, dword [esi]
push esi
call dword [eax + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test edi, edi
jne 0x4019df
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push edi
push ecx
push edi
push 1
push edi
push 0xc0001000
push edi
push 1
push edx
mov dword [esp + 0x3c], str.Could_not_find_the_System_class_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
mov eax, dword [esi]
push str._Ljava_io_PrintStream__V
push str.setOut
push edi
push esi
call dword [eax + 0x1c4]
mov ecx, dword [esi]
push esi
mov ebx, eax
call dword [ecx + 0x390]
cmp al, 1
jne 0x401a3e
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x18]
push 0
push edx
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push eax
mov dword [esp + 0x3c], str.Could_not_find_the_setOut_method_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov ecx, dword [esi]
push esi
call dword [ecx + 0x40]
mov edx, dword [esi]
push esi
call dword [edx + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
test ebx, ebx
jne 0x401a6e
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push ebx
push eax
push ebx
push 1
push ebx
push 0xc0001000
push ebx
push 1
push ecx
mov dword [esp + 0x3c], str.Could_not_find_the_setOut_method_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
push ebp
push ebx
push edi
push esi
call fcn.00402450
mov edx, dword [esi]
add esp, 0x10
push esi
call dword [edx + 0x390]
cmp al, 1
jne 0x401ac3
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push 0
push eax
push 0
push 1
push 0
push 0xc0001000
push 0
push 1
push ecx
mov dword [esp + 0x3c], str.Could_not_call_the_setOut_method_for_System.out_redirect.
call dword [sym.imp.ADVAPI32.dll_ReportEventA]
mov edx, dword [esi]
push esi
call dword [edx + 0x40]
mov eax, dword [esi]
push esi
call dword [eax + 0x44]
pop edi
pop esi
pop ebp
xor al, al
pop ebx
ret
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
ret