Function at 0x41b920
Capabilities:
Accept command line arguments
Create process on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x47496d
push eax
mov eax, 0x8cc4
mov dword fs:[0], esp
call fcn.0044e830
push ebx
push esi
push edi
lea eax, [ebp - 0x1c]
push eax
mov ebx, ecx
mov dword [ebp - 0x1c], 8
mov dword [ebp - 0x18], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov ecx, ebx
call fcn.0043baf4
call fcn.00467670
test eax, eax
push 0
setne byte [0x4a7fcc]
call fcn.0043d22f
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov esi, eax
push 0x481974
push esi
xor edi, edi
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
mov ecx, 1
test eax, eax
cmovne edi, ecx
push 0
mov dword [ebp - 0x14], edi
call fcn.0043d22f
add esp, 4
call fcn.00429930
xor ecx, ecx
mov edx, eax
test edx, edx
setne cl
test ecx, ecx
jne 0x41b9c7
push 0x80004005
call fcn.00402670
mov eax, dword [edx]
mov ecx, edx
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x10], eax
push 0x100
lea eax, [ebp - 0x21c]
push eax
push 0
mov dword [ebp - 4], 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x47ece4
push esi
call dword [sym.imp.SHLWAPI.dll_StrStrW]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
lea eax, [ebp - 0x21c]
push eax
je 0x41ba2e
call edi
lea edx, [eax + 2]
lea edx, [esi + edx*2]
test edx, edx
jne 0x41ba1c
xor ecx, ecx
jmp 0x41ba4f
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41ba21
jmp 0x41ba4b
call edi
lea edx, [esi + eax*2]
test edx, edx
jne 0x41ba3b
xor ecx, ecx
jmp 0x41ba4f
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41ba40
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x10]
call fcn.00408f60
push 0x48198c
push dword [ebp - 0x10]
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
jne 0x41ba79
push eax
push 0x479cd0
lea ecx, [ebp - 0x10]
call fcn.00408f60
lea ecx, [ebp - 0x10]
call fcn.0041c190
mov ecx, eax
call fcn.0041c0e0
movzx eax, byte [0x4a7fcc]
shl eax, 9
add eax, 0x481060
push eax
push str.32770
call dword [sym.imp.USER32.dll_FindWindowW]
mov ecx, dword [section..QQSKINT]
test eax, eax
cmovne ecx, eax
cmp dword [ebp - 0x14], 0
mov dword [0x4a7fc8], eax
mov dword [section..QQSKINT], ecx
je 0x41bae7
test ecx, ecx
je 0x41bcd9
push 0
push 0
push 0x4f7
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x41bcd9
test ecx, ecx
je 0x41bb53
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
push 6
push ecx
call esi
push 9
push dword [section..QQSKINT]
call esi
push 1
push dword [section..QQSKINT]
call esi
push dword [ebp - 0x10]
call edi
test eax, eax
je 0x41bcd9
push dword [ebp - 0x10]
push 0x4ae008
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push 0x4ae008
push dword [section..QQSKINT]
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 2
push 0x4ae008
push 0x4f5
push dword [section..QQSKINT]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x41bcd9
push dword [ebp - 0x10]
call edi
test eax, eax
je 0x41bb9b
push 1
push 0
push 0
lea eax, [ebp - 0x21c]
push eax
push 0
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
xor esi, esi
jmp 0x41bb80
push 0x3e8
inc esi
call edi
cmp dword [section..QQSKINT], 0
jne 0x41bb17
cmp esi, 0xa
jl 0x41bb80
jmp 0x41bcd9
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
call fcn.00405d40
mov eax, dword [0x4a471c]
cmp dword [eax - 0xc], 0
jne 0x41bbc6
push 0
push 0
push 0x4819b0
call fcn.0042d0b3
jmp 0x41bcd9
call fcn.00467b30
test eax, eax
je 0x41bc31
call fcn.00467ac0
test eax, eax
jne 0x41bc31
push 0x100
lea eax, [ebp - 0x61c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push 3
push dword [0x4a471c]
lea eax, [ebp - 0x61c]
push eax
call fcn.0044cf75
add esp, 0xc
test eax, eax
jne 0x41bc31
push 0x100
lea eax, [ebp - 0x41c]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0
lea eax, [ebp - 0x41c]
push 1
push eax
call fcn.00469050
add esp, 0xc
jmp 0x41bcd9
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
call esi
push 1
mov dword [0x4a4854], eax
call esi
mov dword [0x4a4858], eax
movzx eax, byte [0x4a7fcc]
shl eax, 9
add eax, 0x481460
push eax
mov ecx, ebx
call fcn.0043c1d2
cmp dword [0x4a4850], 0
jne 0x41bca9
push 0x1b8
call fcn.00429324
add esp, 4
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x41bc8e
push 0
mov ecx, eax
call fcn.004199c0
mov ecx, eax
jmp 0x41bc90
xor ecx, ecx
mov dword [0x4a4850], ecx
mov eax, dword [ecx]
push 0
push 0x8c
mov byte [ebp - 4], 0
call dword [eax + 0x13c]
push 0
lea ecx, [ebp - 0x8cd0]
call fcn.0041c4b0
lea eax, [ebp - 0x8cd0]
mov ecx, eax
mov byte [ebp - 4], 2
mov dword [ebx + 0x20], eax
call fcn.0043adc4
lea ecx, [ebp - 0x8cd0]
mov byte [ebp - 4], 0
call fcn.0041b700
mov edx, dword [ebp - 0x10]
add edx, 0xfffffff0
mov dword [ebp - 4], 0xffffffff
lea eax, [edx + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
pop edi
pop esi
pop ebx
test ecx, ecx
jg 0x41bd00
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
xor eax, eax
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret