Function at 0x433e10
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x466b40
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x4814f0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x18]
push eax
xor ebx, ebx
push ecx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], ebx
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov dword [ebp - 0x24], eax
xor eax, eax
cmp dword [ebp - 0x18], ebx
mov dword [ebp - 0x20], eax
jle 0x434106
mov edx, dword [ebp - 0x24]
mov eax, dword [edx + eax*4]
push eax
lea ecx, [ebp - 0x10]
call fcn.0040fbe0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 1
call fcn.00422520
mov ecx, eax
call fcn.00422570
mov ecx, dword [ebp - 0x10]
push 0x46e5a0
push ecx
call fcn.0044b14d
add esp, 8
cmp eax, ebx
jne 0x433ebd
mov dword [edi + 0x6c], 1
mov dword [edi + 0x74], ebx
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
mov byte [ebp - 4], bl
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jmp 0x4340ea
mov ecx, dword [ebp - 0x10]
mov esi, dword [sym.imp.SHLWAPI.dll_StrCmpNIW]
push 0xc
push 0x46e584
push ecx
call esi
test eax, eax
jne 0x433f40
push 0xc
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x10]
call fcn.00422440
lea esi, [edi + 0x7c]
push eax
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.0040f840
mov eax, dword [ebp - 0x28]
add eax, 0xfffffff0
mov byte [ebp - 4], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x433f14
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, esi
call fcn.00422520
mov ecx, eax
call fcn.00422570
push 0x22
push 0x22
mov ecx, esi
call fcn.00432740
mov ecx, eax
call fcn.004325f0
mov dword [edi + 0x70], 1
jmp 0x4340d4
mov ecx, dword [ebp - 0x10]
push 0x46e56c
push ecx
call fcn.0044b14d
add esp, 8
cmp eax, ebx
jne 0x433f61
mov dword [edi + 0x78], 1
jmp 0x433ea2
mov ecx, dword [ebp - 0x10]
push 6
push 0x46e55c
push ecx
call esi
push 6
test eax, eax
jne 0x433fd7
lea edx, [ebp - 0x2c]
push edx
lea ecx, [ebp - 0x10]
call fcn.00422440
lea esi, [edi + 0x68]
push eax
mov ecx, esi
mov byte [ebp - 4], 3
call fcn.0040f840
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
mov byte [ebp - 4], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x433fb2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, esi
call fcn.00422520
mov ecx, eax
call fcn.00422570
push 0x22
push 0x22
mov ecx, esi
call fcn.00432740
mov ecx, eax
call fcn.004325f0
jmp 0x4340d4
mov ecx, dword [ebp - 0x10]
push 0x46e54c
push ecx
call esi
test eax, eax
jne 0x4340d4
mov edx, dword [edi + 0x9c]
mov eax, dword [edx + 4]
lea esi, [edi + 0x84]
push eax
mov ecx, esi
call fcn.00433140
mov eax, dword [esi + 0x18]
mov dword [eax + 4], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x1c], ebx
mov dword [eax], eax
mov eax, dword [esi + 0x18]
push 6
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x10]
mov dword [eax + 8], eax
call fcn.00422440
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 4
call fcn.00422520
mov ecx, eax
call fcn.00422570
mov edx, dword [ebp - 0x14]
push 0x46e544
push edx
call fcn.0044b14d
add esp, 8
cmp eax, ebx
je 0x4340b1
mov ecx, dword [ebp - 0x14]
push 0x46e540
push ecx
call fcn.0044e678
add esp, 8
cmp eax, ebx
je 0x4340b1
push eax
lea ecx, [ebp - 0x1c]
call fcn.0040fbe0
lea edx, [ebp - 0x1c]
push edx
lea eax, [ebp - 0x38]
push eax
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.00433a40
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
mov byte [ebp - 4], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43409f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x46e540
push ebx
call fcn.0044e678
add esp, 8
cmp eax, ebx
jne 0x434060
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [ebp - 4], 1
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4340d4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
mov byte [ebp - 4], bl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4340f6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x20]
inc eax
cmp eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
jl 0x433e61
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
mov dword [ebp - 4], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43412c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4