Function at 0x404510
Capabilities:
Accept command line arguments

Disassembly:
sub esp, 0xc
test byte [0x19ae5e0], 1
jne 0x404523
or dword [0x19ae5e0], 1
push edi
push 0x3e8fa0
call fcn.00403ac0
mov dword [0x19ae5dc], eax
add esp, 4
lea eax, [esp + 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
xor edi, edi
cmp dword [esp + 4], edi
mov dword [0x19ae5d8], eax
jle 0x40486e
push ebx
push ebp
push esi
jmp 0x404565
mov eax, dword [0x19ae5d8]
test eax, eax
je 0x40485a
mov esi, dword [eax + edi*4]
push str._rargs
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x404749
push 0x4068e8
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x404749
push str._contentbytes
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x404721
push 0x4068b0
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x404721
push str._staturlerror
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x4046f9
push 0x406878
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x4046f9
push str._gparamurl
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x4046d1
push 0x406848
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x4046d1
push str._staturlsuccesslaunch
push esi
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x404648
push 0x4067f0
push esi
call fcn.004050ca
add esp, 8
test eax, eax
je 0x40484f
lea ecx, [edi + 1]
cmp ecx, dword [esp + 0x10]
jge 0x40484f
mov eax, dword [0x19ae5d8]
mov ecx, dword [eax + edi*4 + 4]
lea edx, [esp + 0x18]
push edx
push 0x3e
push ecx
mov dword [esp + 0x24], 0
call fcn.00403550
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x40484f
xor esi, esi
cmp dword [ebp], esi
je 0x4046c3
mov dword [esp + 0x14], 0x6d3ee0
nop
cmp esi, dword [esp + 0x18]
jge 0x4046c3
mov ebx, dword [ebp + esi*4]
test ebx, ebx
je 0x4046aa
mov edx, dword [esp + 0x14]
push ebx
push edx
call dword [sym.imp.SHLWAPI.dll_StrCpyW]
push ebx
call fcn.00405173
add dword [esp + 0x18], 0xa028
inc esi
add esp, 4
cmp dword [ebp + esi*4], 0
jne 0x404690
push ebp
call fcn.00405173
add esp, 4
jmp 0x40484f
lea eax, [edi + 1]
cmp eax, dword [esp + 0x10]
jge 0x40484f
mov ecx, dword [0x19ae5d8]
mov edx, dword [ecx + edi*4 + 4]
push edx
push 0x4534e0
call dword [sym.imp.SHLWAPI.dll_StrCpyW]
jmp 0x40484f
lea eax, [edi + 1]
cmp eax, dword [esp + 0x10]
jge 0x40484f
mov ecx, dword [0x19ae5d8]
mov edx, dword [ecx + edi*4 + 4]
push edx
push 0xeafe48
call dword [sym.imp.SHLWAPI.dll_StrCpyW]
jmp 0x40484f
lea eax, [edi + 1]
cmp eax, dword [esp + 0x10]
jge 0x40484f
mov ecx, dword [0x19ae5d8]
mov edx, dword [ecx + edi*4 + 4]
push edx
call dword [sym.imp.SHLWAPI.dll_StrToIntW]
mov dword [0xee1f14], eax
jmp 0x40484f
lea eax, [edi + 1]
cmp eax, dword [esp + 0x10]
jge 0x40484f
mov edi, eax
mov eax, dword [0x19ae5d8]
mov eax, dword [eax + edi*4]
push str._begin_
push eax
call fcn.004050ca
add esp, 8
test eax, eax
je 0x40484f
mov ecx, dword [0x19ae5d8]
inc edi
lea esi, [edi*4]
mov eax, dword [esi + ecx]
push 0x4067d4
push eax
xor bl, bl
call fcn.004050ca
add esp, 8
test eax, eax
jne 0x40484f
lea edx, [edi + 1]
mov dword [esp + 0x14], edx
jmp 0x4047b0
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x10]
jge 0x40484f
mov ebp, dword [sym.imp.SHLWAPI.dll_StrCatW]
test bl, bl
je 0x4047d6
mov ecx, dword [0x19ae5dc]
push 0x4067d0
push ecx
call ebp
mov edx, dword [0x19ae5d8]
mov eax, dword [esi + edx]
mov ecx, dword [0x19ae5dc]
push eax
push ecx
call ebp
test bl, bl
je 0x4047fb
mov edx, dword [0x19ae5dc]
push 0x4067d0
push edx
call ebp
mov eax, dword [0x19ae5d8]
mov esi, dword [esi + eax]
push str.testlog
push esi
call fcn.004050ca
mov ecx, dword [0x19ae5dc]
add esp, 8
push 0x4065f8
test eax, eax
push ecx
setne bl
call ebp
mov edx, dword [0x19ae5d8]
inc dword [esp + 0x14]
inc edi
lea esi, [edi*4]
mov eax, dword [esi + edx]
push 0x4067d4
push eax
call fcn.004050ca
add esp, 8
test eax, eax
je 0x4047b0
inc edi
cmp edi, dword [esp + 0x10]
jl 0x404560
mov eax, dword [esp + 0x20]
mov ecx, dword [0x19ae5dc]
pop esi
pop ebp
pop ebx
mov dword [eax], ecx
pop edi
add esp, 0xc
ret
mov eax, dword [esp + 0x14]
mov edx, dword [0x19ae5dc]
mov dword [eax], edx
pop edi
add esp, 0xc
ret