Function at 0x46973c
Capabilities:
Accept command line arguments

Disassembly:
push 0x24
mov eax, 0x5214f4
call fcn.0051d3a0
mov ebx, ecx
mov dword [ebp - 0x24], ebx
mov ecx, dword [ebp + 8]
xor esi, esi
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], ecx
test ecx, ecx
je 0x469761
mov dword [ecx], esi
test eax, eax
je 0x469767
mov dword [eax], esi
test ecx, ecx
jne 0x46976c
int3
test eax, eax
jne 0x469771
int3
lea eax, [ebp - 0x20]
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], esi
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov edx, eax
mov ecx, edx
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x469790
sub ecx, edi
lea eax, [ebp - 0x20]
push eax
sar ecx, 1
push ecx
push edx
call fcn.00469331
mov edi, eax
test edi, edi
js 0x4698f0
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x20]
cmp ecx, eax
je 0x46983b
lea eax, [ebp - 0x20]
mov ebx, ecx
sub ebx, eax
neg ebx
sbb ebx, ebx
and ebx, ecx
lea edi, [ebx + 0xc]
test byte [edi], 1
je 0x4697d4
int3
cmp dword [edi], 0
je 0x469824
cmp dword [edi], 2
je 0x469809
mov ecx, dword [edi + 8]
cmp word [ecx], 0x40
jne 0x469809
push dword [edi]
lea eax, [ecx + 2]
push eax
push ecx
call fcn.005129f0
add dword [edi], 0xfffffffe
lea eax, [ebp - 0x20]
add esp, 0xc
push eax
push dword [edi + 8]
call fcn.004694d9
mov edi, eax
jmp 0x46981c
push ecx
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x28]
push edi
push eax
add ecx, 0xc
call fcn.0044ff5b
mov edi, dword [eax]
test edi, edi
js 0x4698f0
push ecx
push ebx
lea ecx, [ebp - 0x20]
call fcn.00451e92
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x20]
cmp ecx, eax
jne 0x4697be
mov ebx, dword [ebp - 0x24]
mov eax, dword [ebx + 0x10]
sub eax, dword [ebx + 0xc]
cdq
push 0xc
pop edi
idiv edi
mov edi, dword [ebx + 4]
mov edx, eax
mov eax, edi
sub eax, dword [ebx]
sar eax, 2
mov dword [ebp - 0x24], edx
cmp edx, eax
jbe 0x469897
push edx
lea eax, [ebp - 0x28]
mov ecx, ebx
push eax
call fcn.00469975
mov edi, dword [ebp - 0x28]
test edi, edi
jns 0x469872
mov ecx, dword [ebp - 0x20]
jmp 0x4698ac
mov ecx, dword [ebx + 4]
mov edx, dword [ebp - 0x24]
test ecx, ecx
je 0x469881
mov dword [ecx], esi
mov ecx, dword [ebx + 4]
add ecx, 4
mov eax, ecx
mov dword [ebx + 4], ecx
sub eax, dword [ebx]
sar eax, 2
cmp edx, eax
jne 0x469878
mov ecx, dword [ebp - 0x20]
jmp 0x4698aa
jae 0x4698aa
sub edi, 4
mov eax, edi
sub eax, dword [ebx]
sar eax, 2
cmp edx, eax
jb 0x469899
mov dword [ebx + 4], edi
mov edi, esi
test edi, edi
js 0x4698f3
mov edx, dword [ebp - 0x24]
mov edi, esi
test edx, edx
je 0x4698d2
mov eax, dword [ebx + 0xc]
lea esi, [esi + 0xc]
mov ecx, dword [ebx]
mov eax, dword [esi + eax - 4]
mov dword [ecx + edi*4], eax
inc edi
cmp edi, edx
jne 0x4698b9
mov ecx, dword [ebp - 0x20]
xor esi, esi
mov edi, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [edi], eax
mov eax, dword [ebp - 0x30]
mov dword [eax], edx
jmp 0x469911
lea eax, [ebp - 0x20]
cmp ecx, eax
je 0x4698fa
push ecx
push ecx
mov ecx, eax
call fcn.00451e92
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x20]
cmp ecx, eax
jne 0x4698e0
mov eax, edi
jmp 0x46991a
lea eax, [ebp - 0x20]
cmp ecx, eax
je 0x469918
push ecx
push ecx
mov ecx, eax
call fcn.00451e92
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x20]
cmp ecx, eax
jne 0x4698fe
mov eax, esi
call fcn.0051d34a
ret 8