Function at 0x10007f5a
Capabilities:
Accept command line arguments
Get common file path
Get hostname
Get session user name

Disassembly:
push ebp
lea ebp, [esp - 0x324]
sub esp, 0x3a4
mov eax, dword [0x100310fc]
xor eax, ebp
mov dword [ebp + 0x320], eax
mov eax, dword [ebp + 0x330]
push ebx
push esi
mov esi, dword [ebp + 0x32c]
push edi
mov edi, ecx
mov ecx, esi
mov dword [ebp - 0x7c], eax
mov byte [esi + 0x14], 0x20
mov dword [esi + 0x10], 2
call fcn.10010bf8
push 0x40
lea eax, [ebp + 0x2d0]
push eax
mov ecx, edi
call fcn.10005cd3
xor ebx, ebx
mov eax, str.error_report
cmp dword [edi + 0xc], ebx
jne 0x10007fbc
mov eax, str.snapshot
lea ecx, [ebp + 0x2d0]
push ecx
push eax
push str._r_n_This__s_was_automatically_generated_r_n_by_BugTrap_for_Win32_x86_on__s_r_n
lea eax, [ebp - 0x78]
push 0x100
push eax
call fcn.100165d7
add esp, 0x14
lea eax, [ebp - 0x78]
push eax
mov ecx, esi
call fcn.10010d7c
push str.report
mov ecx, esi
call fcn.10010de2
push 0x10029378
push str.version2
mov ecx, esi
call fcn.10010d1b
push str.Win32_x86
push str.platform
mov ecx, esi
call fcn.10010f74
push 0x10032e08
push str.application
mov ecx, esi
call fcn.10010f74
push 0x10033960
push str.gamessn
mov ecx, esi
call fcn.10010f74
push 0x10032f10
push str.version
mov ecx, esi
call fcn.10010f74
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp + 0x310]
push eax
mov dword [ebp - 0x80], 0x10
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
test eax, eax
jne 0x10008068
mov byte [ebp + 0x310], bl
lea eax, [ebp + 0x310]
push eax
push str.computer
mov ecx, esi
call fcn.10010f74
push esi
call fcn.10005c05
pop ecx
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp + 0x88]
push eax
mov dword [ebp - 0x80], 0x101
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
test eax, eax
jne 0x100080a4
mov byte [ebp + 0x88], bl
lea eax, [ebp + 0x88]
push eax
push str.user
mov ecx, esi
call fcn.10010f74
push 0x40
lea eax, [ebp + 0x290]
push eax
mov ecx, edi
call fcn.10005d22
lea eax, [ebp + 0x290]
push eax
push str.timestamp
mov ecx, esi
call fcn.10010f74
push esi
mov ecx, edi
call fcn.10007cfd
mov eax, dword [0x100310a4]
add eax, 8
push eax
push str.usermsg
mov ecx, esi
call fcn.10010f74
push esi
mov ecx, edi
call fcn.10007e4b
push esi
mov ecx, edi
call fcn.10007eca
cmp dword [edi + 0xc], ebx
je 0x10008114
push esi
mov ecx, edi
call fcn.10005d51
push esi
mov ecx, edi
call fcn.10005ead
push esi
mov ecx, edi
call fcn.10005fae
push esi
mov ecx, edi
call fcn.10006035
push esi
mov ecx, edi
call fcn.100060ce
push esi
mov ecx, edi
call fcn.10006188
push esi
mov ecx, edi
call fcn.100061f0
push esi
mov ecx, edi
call fcn.10006275
push str.threads
mov ecx, esi
call fcn.10010de2
cmp dword [edi + 0xc], ebx
je 0x10008172
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push str.interrupted
push ebx
push eax
push esi
mov ecx, edi
call fcn.10007aae
cmp dword [ebp - 0x7c], ebx
je 0x10008182
push dword [ebp - 0x7c]
mov ecx, edi
push esi
call fcn.10007c35
mov ecx, esi
call fcn.10010e6c
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
push eax
push str.cmdline
mov ecx, esi
call fcn.10010f74
lea eax, [ebp + 0x18c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
test eax, eax
jne 0x100081b8
mov byte [ebp + 0x18c], bl
lea eax, [ebp + 0x18c]
push eax
push str.curdir
mov ecx, esi
call fcn.10010f74
push esi
call fcn.10005925
pop ecx
cmp dword [ebp - 0x7c], ebx
je 0x100081e2
push dword [ebp - 0x7c]
mov ecx, edi
push esi
call fcn.10007969
mov ecx, esi
call fcn.10010e6c
mov ecx, esi
call fcn.10010f3c
mov ecx, dword [ebp + 0x320]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100162d3
add ebp, 0x324
leave
ret 8