Function at 0x403820
Capabilities:
Accept command line arguments

Disassembly:
sub esp, 0x3c
push ebx
push ebp
push esi
push edi
push 0x421e14
lea ecx, [esp + 0x18]
call fcn.00401120
push 0x104
xor ebp, ebp
call fcn.00403b7b
push 0x104
mov ebx, eax
call fcn.00403b7b
mov edi, eax
add esp, 8
mov dword [esp + 0x10], edi
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
test ebx, ebx
mov esi, eax
je 0x403a7b
test edi, edi
je 0x403a54
push esi
call fcn.0040ca31
push esi
lea eax, [esp + 0x1c]
push str.CommandLine:__s
push eax
call fcn.004013f0
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
add esp, 0x10
push 0x104
push ebx
push ebp
call edi
test eax, eax
je 0x403a54
push ebx
call fcn.0040ca31
push str..exe
push ebx
call fcn.0040c91b
add esp, 0xc
test eax, eax
je 0x403907
mov ecx, dword [str..ini]
mov dword [eax], ecx
mov dl, byte [0x421e00]
mov byte [eax + 4], dl
lea eax, [esp + 0x1c]
push eax
push ebx
call fcn.0040e44d
add esp, 8
test eax, eax
jne 0x403907
mov ebp, dword [esp + 0x10]
mov edx, ebp
mov eax, ebx
sub edx, ebx
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x4038e3
push ebp
lea ecx, [esp + 0x18]
push str.ini_file_found:__s
push ecx
call fcn.004013f0
add esp, 0xc
mov ebp, 1
push 0x104
push ebx
push 0
call edi
test eax, eax
je 0x403a54
push ebx
call fcn.0040ca31
push ebx
push esi
call fcn.0040c91b
add esp, 0xc
test eax, eax
je 0x403a54
mov ecx, ebx
lea esi, [ecx + 1]
mov dl, byte [ecx]
add ecx, 1
test dl, dl
jne 0x403936
sub ecx, esi
push ecx
push eax
call fcn.0040e88a
mov esi, eax
push 0x421de4
push esi
call fcn.0040c91b
add esp, 0x10
cmp eax, esi
jne 0x403967
push esi
call fcn.0040e025
add esp, 4
mov esi, eax
movsx edx, byte [esi]
push edx
call fcn.0040e95f
add esp, 4
test eax, eax
je 0x40398f
push esi
call fcn.0040e025
mov esi, eax
movsx eax, byte [esi]
push eax
call fcn.0040e95f
add esp, 8
test eax, eax
jne 0x403977
push 0x421de4
push esi
call fcn.0040c91b
add esp, 8
cmp eax, esi
jne 0x4039ac
push esi
call fcn.0040e025
add esp, 4
mov esi, eax
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4039b1
sub eax, edx
cmp eax, 1
jbe 0x403a54
mov eax, esi
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4039d0
sub eax, edx
add eax, 0xffffffff
push eax
push esi
call fcn.0040e88a
mov edi, eax
push 0x421de4
push edi
call fcn.0040c91b
add esp, 0x10
test eax, eax
je 0x403a04
push 0
push edi
call fcn.0040e854
add esp, 8
push esi
lea ecx, [esp + 0x18]
push str.lptTempPtr:__s
push ecx
call fcn.004013f0
lea edx, [esp + 0x28]
push edx
push esi
call fcn.0040e44d
add esp, 0x14
test eax, eax
jne 0x403a54
mov edi, dword [esp + 0x10]
mov edx, edi
mov eax, esi
sub edx, esi
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x403a30
push edi
lea eax, [esp + 0x18]
push str.ini_file_found:__s
push eax
call fcn.004013f0
add esp, 0xc
mov ebp, 1
push ebx
call fcn.00403b76
add esp, 4
cmp ebp, 1
jne 0x403a77
lea ecx, [esp + 0x14]
call fcn.004012c0
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
mov edi, dword [esp + 0x10]
push edi
call fcn.00403b76
add esp, 4
lea ecx, [esp + 0x14]
call fcn.004012c0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3c
ret