Function at 0x1004fbdc
Capabilities:
Accept command line arguments

Disassembly:
push 0xc5c
mov eax, 0x100d2c35
call fcn.10022400
mov esi, 0x1013bfd0
push esi
mov dword [ebp - 0xc5c], esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp byte [0x1013bfa6], bl
jne 0x1004ff97
push ebx
push ebx
push 4
lea ecx, [ebp - 0x430]
call fcn.100476b8
push 0x20019
lea ecx, [ebp - 0x430]
mov byte [ebp - 4], 1
call fcn.10025983
push eax
lea ecx, [ebp - 0x430]
call fcn.10025ac8
test eax, eax
jne 0x1004ff82
mov dword [ebp - 0x414], ebx
push ebx
push 0x1004ffac
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x430]
mov byte [ebp - 4], 2
call fcn.10047aa6
test eax, eax
jne 0x1004fc81
push 0xa
push dword [ebp - 0x414]
call fcn.1003b936
test eax, eax
setg byte [0x101063a0]
push ebx
push 0x1004ffc8
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x430]
call fcn.10047aa6
test eax, eax
jne 0x1004fcb3
push 0xa
push dword [ebp - 0x414]
call fcn.1003b936
test eax, eax
setg byte [0x101063a1]
push ebx
push 0x1004ffdc
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x430]
call fcn.10047aa6
test eax, eax
jne 0x1004fce5
push 0xa
push dword [ebp - 0x414]
call fcn.1003b936
test eax, eax
setg byte [0x101063ac]
lea eax, [ebp - 0x830]
mov dword [ebp - 0x840], eax
xor eax, eax
lea edi, [ebp - 0x830]
mov dword [ebp - 0x83c], 0x200
mov byte [ebp - 0x838], bl
mov dword [ebp - 0x834], ebx
mov word [ebp - 0x830], ax
stosd dword es:[edi], eax
mov word [ebp - 0x82c], ax
push ebx
push 0x10050004
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x430]
mov byte [ebp - 4], 3
call fcn.10047aa6
test eax, eax
jne 0x1004fd84
lea eax, [ebp - 0xc58]
push eax
call fcn.1004e469
mov eax, dword [eax]
mov dword [ebp - 0xc54], eax
push eax
lea ecx, [ebp - 0x840]
mov byte [ebp - 4], 4
call fcn.10042d8a
lea ecx, [ebp - 0xc54]
mov byte [ebp - 4], 3
call fcn.100258cf
push dword [ebp - 0x414]
lea ecx, [ebp - 0x840]
call fcn.100429c9
jmp 0x1004fdb1
push ebx
push 0x10050020
lea eax, [ebp - 0x414]
push eax
lea ecx, [ebp - 0x430]
call fcn.10047aa6
test eax, eax
jne 0x1004fdb1
push dword [ebp - 0x414]
lea ecx, [ebp - 0x840]
call fcn.10042d8a
mov eax, dword [ebp - 0x840]
xor ecx, ecx
cmp cx, word [eax]
je 0x1004ff65
push eax
mov byte [ebp - 0x838], 1
call dword [sym.imp.SHLWAPI.dll_PathRemoveExtensionW]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
and dword [ebp - 0xc44], 0
mov ebx, eax
lea eax, [ebp - 0xc40]
mov dword [ebp - 0xc50], eax
xor eax, eax
lea edi, [ebp - 0xc40]
mov dword [ebp - 0xc4c], 0x200
mov word [ebp - 0xc40], ax
stosd dword es:[edi], eax
mov word [ebp - 0xc3c], ax
push dword [ebp - 0xc4c]
mov byte [ebp - 4], 5
push dword [ebp - 0xc50]
mov byte [ebp - 0xc48], 1
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x1004fe5e
push 0x80004005
push 0x66673573
lea eax, [ebp - 0xc68]
push eax
call fcn.1003ee25
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.1003dcb5
lea ecx, [ebp - 0xc68]
mov byte [ebp - 4], 5
call fcn.1003d652
push dword [ebp - 0xc50]
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
lea ecx, [ebp - 0x840]
mov esi, eax
call fcn.10043112
mov edi, dword [ebp - 0x840]
push ebx
push esi
call fcn.10027d06
push eax
push edi
lea eax, [ebp - 0x840]
push 0x10050034
push eax
call fcn.10042bc0
add esp, 0x14
xor ebx, ebx
push ebx
push 0x80
push 0x7021
push dword [ebp - 0x840]
mov ecx, 0x101073d4
call fcn.1004b409
test al, al
je 0x1004ff4c
mov byte [0x1013bfa7], 1
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov edi, eax
test edi, edi
je 0x1004fee1
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x1004fee5
mov esi, ebx
jmp 0x1004fefc
lea esi, [eax + eax]
mov eax, esi
call fcn.10001778
mov eax, esp
push ebx
push esi
push edi
push eax
call fcn.10046774
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push esi
push 0x10050054
push 0x3ff
lea eax, [ebp - 0x410]
push 0x400
push eax
call dword [sym.imp.MSVCR100.dll__snprintf_s]
mov edx, dword [0x101073d4]
add esp, 0x18
push 2
push ebx
push ebx
mov ecx, 0x101073d4
mov esi, eax
call dword [edx + 8]
push esi
lea eax, [ebp - 0x410]
push eax
push dword [0x101073dc]
call fcn.1004a39d
jmp 0x1004ff52
mov byte [0x1013bfa7], bl
lea eax, [ebp - 0xc50]
push eax
mov ecx, eax
call fcn.10027c49
mov esi, 0x1013bfd0
lea eax, [ebp - 0x840]
push eax
mov ecx, eax
call fcn.10027c49
lea ecx, [ebp - 0x414]
mov byte [ebp - 4], 1
call fcn.100258cf
lea ecx, [ebp - 0x430]
mov byte [0x1013bfa6], 1
mov byte [ebp - 4], bl
call fcn.10027c6f
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea esp, [ebp - 0xc78]
call fcn.10022631
ret