Function at 0x1038807
Capabilities:
Accept command line arguments

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x500
mov eax, dword [0x103d004]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
xor ebx, ebx
push 7
mov dword [ebp - 0x500], eax
xor eax, eax
test dword [ebp + 0xc], 0xfffffffc
pop ecx
lea edi, [ebp - 0x4dc]
mov dword [ebp - 0x4e0], ebx
mov dword [ebp - 0x4b4], esi
mov dword [ebp - 0x4b8], edx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x4f8], ebx
je 0x103886d
mov dword [ebp - 0x4b0], 0x57
jmp 0x1038d07
lea eax, [ebp - 0x4fc]
push eax
push dword [ebp + 0xc]
push edx
push esi
call fcn.010375e4
test eax, eax
jne 0x1038893
call dword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
mov dword [ebp - 0x4b0], eax
jmp 0x1038d07
cmp dword [0x103d488], ebx
jne 0x10388a4
call fcn.0103575b
cmp eax, ebx
je 0x1038882
mov eax, dword [ebp + 0xc]
and eax, 1
mov dword [ebp - 0x4c0], eax
mov dword [ebp - 0x4bc], 0x103d498
jne 0x10388c6
mov dword [ebp - 0x4bc], 0x103d4c0
mov eax, dword [ebp - 0x4bc]
cmp dword [eax], ebx
jne 0x10388df
mov dword [ebp - 0x4b0], 0x10d5
jmp 0x1038d07
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp esi, ebx
je 0x10388ec
push esi
call edi
mov eax, dword [ebp - 0x4b8]
mov dword [ebp - 0x4b0], eax
cmp eax, ebx
jne 0x103892b
push 0x208
lea eax, [ebp - 0x390]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x1038921
lea eax, [ebp - 0x390]
mov dword [ebp - 0x4b0], eax
jmp 0x103892b
mov dword [ebp - 0x4b0], 0x102ba34
push dword [ebp - 0x4b0]
call edi
mov esi, eax
cmp dword [ebp - 0x4b4], ebx
je 0x1038947
push dword [ebp - 0x4b4]
call edi
add esi, eax
add esi, 0x10
push esi
call fcn.0103696e
mov dword [ebp - 0x4b8], eax
cmp eax, ebx
jne 0x1038969
mov dword [ebp - 0x4b0], 8
jmp 0x1038ce0
cmp dword [ebp - 0x4b4], ebx
je 0x103898e
push dword [ebp - 0x4b4]
push dword [ebp - 0x4b0]
push 0x102ba28
push esi
push eax
call fcn.01035653
add esp, 0x14
jmp 0x10389a3
push dword [ebp - 0x4b0]
push 0x102ba20
push esi
push eax
call fcn.01035653
add esp, 0x10
cmp eax, ebx
jge 0x10389b5
movzx eax, ax
mov dword [ebp - 0x4b0], eax
jmp 0x1038ce0
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
push eax
call edi
lea eax, [eax + esi + 0x146]
push eax
lea eax, [ebp - 0x4e0]
push eax
push dword [ebp - 0x4bc]
call fcn.01037f6b
mov dword [ebp - 0x4b0], eax
cmp eax, ebx
jne 0x1038ce0
lea eax, [ebp - 0x4b4]
push eax
lea eax, [ebp - 0x4f4]
push eax
mov eax, dword [ebp - 0x4c0]
or eax, 2
push eax
lea eax, [ebp - 0x4e0]
push eax
mov dword [ebp - 0x4f8], 1
call fcn.0103752d
test eax, eax
je 0x1038a47
push ebx
push ebx
push dword [ebp - 0x4b4]
lea eax, [ebp - 0x4f4]
push eax
lea eax, [ebp - 0x4e0]
push eax
call fcn.01038721
push dword [ebp - 0x4b4]
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037ab3
mov eax, dword [ebp - 0x4d0]
mov esi, 0x1000
mov edi, 0x102b968
test dword [eax + 0xc], esi
jne 0x1038b1e
push eax
call fcn.01037446
mov ebx, eax
test esi, ebx
jne 0x1038b13
lea eax, [ebp - 0x4f0]
push eax
call fcn.010352a9
test eax, eax
je 0x1038b05
movzx eax, word [ebp - 0x4e2]
push eax
movzx eax, word [ebp - 0x4e4]
push eax
movzx eax, word [ebp - 0x4e6]
push eax
movzx eax, word [ebp - 0x4e8]
push eax
movzx eax, word [ebp - 0x4ea]
push eax
movzx eax, word [ebp - 0x4ee]
push eax
movzx eax, word [ebp - 0x4f0]
push eax
push 0x102b9ec
lea eax, [ebp - 0x84]
push 0x80
push eax
call fcn.01035653
add esp, 0x28
test eax, eax
jl 0x1038b05
push edi
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037945
lea eax, [ebp - 0x84]
push eax
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037945
or ebx, esi
push ebx
push dword [ebp - 0x4d0]
call fcn.010373e5
mov eax, dword [ebp - 0x4d0]
or dword [eax + 0xc], esi
xor ebx, ebx
push edi
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037945
mov eax, dword [ebp - 0x4cc]
push ebx
push 0x10
push ebx
push dword [ebp - 0x4b8]
mov dword [ebp - 0x4c0], eax
push eax
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037c0d
push ebx
push 0x10010
push ebx
push 0x102b9dc
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037c0d
cmp dword [0x103d4ec], ebx
je 0x1038c1b
mov esi, 0x11c
push esi
lea eax, [ebp - 0x4ac]
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x4ac]
push eax
mov dword [ebp - 0x4ac], esi
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x1038c1b
movzx eax, byte [ebp - 0x392]
push 0x102b790
push eax
movzx eax, word [ebp - 0x394]
push eax
movzx eax, word [ebp - 0x396]
push eax
movzx eax, word [ebp - 0x398]
push eax
push dword [ebp - 0x4a0]
lea eax, [ebp - 0x188]
push dword [ebp - 0x4a4]
push dword [ebp - 0x4a8]
push 0x102b978
push 0x104
push eax
call fcn.01035653
add esp, 0x2c
test eax, eax
jl 0x1038c1b
push ebx
push ebx
push ebx
lea eax, [ebp - 0x188]
push eax
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037c0d
test byte [ebp + 0xc], 2
je 0x1038c61
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
push eax
push 0x102b96c
lea eax, [ebp - 0x390]
push 0x208
push eax
call fcn.01035653
add esp, 0x10
test eax, eax
jl 0x1038c61
push ebx
push ebx
push ebx
lea eax, [ebp - 0x390]
push eax
push dword [ebp - 0x4cc]
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037c0d
mov edi, dword [ebp - 0x4cc]
push 0x102b6e4
push edi
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037945
mov esi, dword [ebp - 0x4fc]
cmp esi, ebx
je 0x1038cbe
mov eax, dword [ebp - 0x4c0]
mov dword [ebp - 0x4ec], eax
lea eax, [ebp - 0x4f4]
push eax
lea eax, [ebp - 0x4e0]
push eax
mov dword [ebp - 0x4f4], 0xe0e01111
mov dword [ebp - 0x4f0], esi
mov dword [ebp - 0x4e8], edi
mov dword [ebp - 0x4e4], ebx
call fcn.010376d4
mov eax, dword [ebp - 0x500]
cmp eax, ebx
je 0x1038ce0
mov ecx, dword [ebp - 0x4bc]
mov ecx, dword [ecx]
xor edx, edx
and ecx, 0xf
xor edi, edi
or edx, esi
or ecx, edi
mov dword [eax], edx
mov dword [eax + 4], ecx
cmp dword [ebp - 0x4b8], ebx
je 0x1038cf3
push dword [ebp - 0x4b8]
call fcn.010369af
cmp dword [ebp - 0x4f8], ebx
je 0x1038d07
lea eax, [ebp - 0x4e0]
push eax
call fcn.01037737
push dword [ebp - 0x4b0]
call dword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_SetLastError]
mov ecx, dword [ebp - 4]
xor eax, eax
cmp dword [ebp - 0x4b0], ebx
pop edi
sete al
pop esi
xor ecx, ebp
pop ebx
call fcn.01034b90
leave
ret 0x10