Function at 0x41a600
Capabilities:
Accept command line arguments
Get common file path
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x454
mov eax, dword [0x424050]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [0x182694c], eax
lea ecx, [ebp - 0x420]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 0
je 0x41a648
cmp dword [ebp - 0x218], 0x104
jb 0x41a652
mov eax, 1
jmp 0x41a936
push 0x103
lea edx, [ebp - 0x210]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x41a681
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov eax, 2
jmp 0x41a936
push 0x5c
lea ecx, [ebp - 0x210]
push ecx
call fcn.00401000
add esp, 8
xor edx, edx
mov word [eax + 2], dx
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
test eax, eax
jne 0x41a6c0
lea ecx, [ebp - 0x420]
push ecx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov eax, 3
jmp 0x41a936
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call fcn.00419c80
add esp, 4
mov dword [0x1826954], eax
cmp dword [0x1826954], 0
je 0x41a708
mov edx, dword [0x1826954]
push edx
call fcn.00419c40
add esp, 4
cmp eax, 1
jne 0x41a708
push 0x421718
mov eax, dword [0x1826954]
push eax
call fcn.00419bc0
add esp, 8
test eax, eax
jne 0x41a72e
mov ecx, dword [0x1826954]
push ecx
call fcn.00419c60
add esp, 4
lea edx, [ebp - 0x420]
push edx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov eax, 4
jmp 0x41a936
push 0x40000
call fcn.004019e5
add esp, 4
mov dword [ebp - 0x42c], eax
cmp dword [ebp - 0x42c], 0
je 0x41a75d
mov ecx, dword [ebp - 0x42c]
call fcn.00414e40
mov dword [ebp - 0x448], eax
jmp 0x41a767
mov dword [ebp - 0x448], 0
mov eax, dword [ebp - 0x448]
mov dword [ebp - 0x428], eax
mov ecx, dword [ebp - 0x428]
mov dword [ebp - 0x214], ecx
cmp dword [ebp - 0x214], 0
jne 0x41a7ae
mov edx, dword [0x1826954]
push edx
call fcn.00419c60
add esp, 4
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov eax, 5
jmp 0x41a936
push 0x421724
mov ecx, dword [0x1826954]
push ecx
call fcn.00419b40
add esp, 8
push eax
mov ecx, dword [ebp - 0x214]
call fcn.00416450
mov dword [ebp - 0x424], eax
cmp dword [ebp - 0x424], 0
jge 0x41a843
mov edx, dword [ebp - 0x214]
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x430], eax
cmp dword [ebp - 0x430], 0
je 0x41a813
push 1
mov ecx, dword [ebp - 0x430]
call fcn.00401370
mov dword [ebp - 0x44c], eax
jmp 0x41a81d
mov dword [ebp - 0x44c], 0
mov ecx, dword [0x1826954]
push ecx
call fcn.00419c60
add esp, 4
lea edx, [ebp - 0x420]
push edx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov eax, 6
jmp 0x41a936
mov ecx, dword [ebp - 0x214]
call fcn.004165b0
mov dword [ebp - 0x424], eax
cmp dword [ebp - 0x424], 0
jge 0x41a8cb
mov ecx, dword [ebp - 0x214]
call fcn.00416410
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x43c], eax
mov ecx, dword [ebp - 0x43c]
mov dword [ebp - 0x438], ecx
cmp dword [ebp - 0x438], 0
je 0x41a89e
push 1
mov ecx, dword [ebp - 0x438]
call fcn.00401370
mov dword [ebp - 0x450], eax
jmp 0x41a8a8
mov dword [ebp - 0x450], 0
mov edx, dword [0x1826954]
push edx
call fcn.00419c60
add esp, 4
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov eax, 7
jmp 0x41a936
mov ecx, dword [ebp - 0x214]
call fcn.00416410
mov ecx, dword [ebp - 0x214]
mov dword [ebp - 0x444], ecx
mov edx, dword [ebp - 0x444]
mov dword [ebp - 0x440], edx
cmp dword [ebp - 0x440], 0
je 0x41a90c
push 1
mov ecx, dword [ebp - 0x440]
call fcn.00401370
mov dword [ebp - 0x454], eax
jmp 0x41a916
mov dword [ebp - 0x454], 0
mov eax, dword [0x1826954]
push eax
call fcn.00419c60
add esp, 4
lea ecx, [ebp - 0x420]
push ecx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov eax, dword [0x1826950]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004013ae
mov esp, ebp
pop ebp
ret 0x10