Function at 0x504ec0
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
push ebx
push esi
mov esi, ecx
push edi
push dword [esi + 4]
call dword [sym.imp.USER32.dll_IsWindow]
xor edi, edi
test eax, eax
jne 0x504ef1
push edi
push ecx
mov eax, esp
push edi
push edi
push edi
push ecx
mov dword [eax], edi
mov ecx, esi
mov eax, esp
push 0xfffffffffffffffd
mov dword [eax], edi
call fcn.00502cd4
mov eax, dword [ebp + 8]
mov dword [ebp - 4], edi
test eax, eax
jne 0x504f01
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea ecx, [ebp - 4]
push ecx
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov ebx, eax
test ebx, ebx
jne 0x504f19
xor al, al
jmp 0x505745
mov edx, dword [ebp - 4]
mov eax, edi
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], edi
push 7
pop ecx
mov dword [ebp - 0x24], ecx
test edx, edx
jle 0x505743
cmp dword [ebx + edi*4], 0
je 0x505702
push dword [ebx + edi*4]
lea ecx, [ebp - 0x20]
call fcn.0040921d
push 0x5d146c
lea ecx, [ebp - 0x50]
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.004ff6f1
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x20]
call fcn.004065d3
lea ecx, [ebp - 0x50]
call fcn.00403f80
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._supplyid
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x504fb1
cmp dword [ebp - 0x24], 8
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.0055584e
mov dword [esi + 0xb8], eax
jmp 0x5056f0
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._unisupplyid
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x504fee
cmp dword [ebp - 0x24], 8
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.0055584e
mov dword [esi + 0xbc], eax
jmp 0x5056f0
cmp dword [ebp - 0xc], 8
lea eax, [ebp - 0x20]
push 0
cmovae eax, dword [ebp - 0x20]
push 0x5d14a8
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x50501c
mov dword [esi + 0xc0], 1
jmp 0x5056f1
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._isrunbrowser
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5050bc
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x50506e
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x505071
xor eax, eax
inc eax
mov dword [esi + 0xe8], eax
mov eax, dword [ebp - 0x3c]
cmp eax, 8
jb 0x5056f1
mov ecx, dword [ebp - 0x50]
lea eax, [eax*2 + 2]
mov dword [ebp - 8], ecx
mov dword [ebp + 8], eax
cmp eax, 0x1000
jb 0x5050af
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00403fef
mov eax, dword [ebp + 8]
pop ecx
pop ecx
mov ecx, dword [ebp - 8]
push eax
push ecx
call fcn.00541bf5
pop ecx
jmp 0x5056f0
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._delayshow
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5050f9
cmp dword [ebp - 0x24], 8
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.0055584e
mov dword [esi + 0xfc], eax
jmp 0x5056f0
cmp dword [ebp - 0xc], 8
lea eax, [ebp - 0x20]
push 0
cmovae eax, dword [ebp - 0x20]
push str._isexistquit
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505127
mov dword [esi + 0xdc], 1
jmp 0x5056f1
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._createshortcut1
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505187
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x505179
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x50517c
xor eax, eax
inc eax
mov dword [esi + 0xc4], eax
jmp 0x505077
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._createdaohang1
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5051e7
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x5051d9
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x5051dc
xor eax, eax
inc eax
mov dword [esi + 0xc8], eax
jmp 0x505077
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._installservice
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505247
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x505239
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x50523c
xor eax, eax
inc eax
mov dword [esi + 0xe4], eax
jmp 0x505077
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._installdriver
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5052a7
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x505299
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x50529c
xor eax, eax
inc eax
mov dword [esi + 0xe0], eax
jmp 0x505077
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push 0x5d1584
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505307
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x5052f9
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x5052fc
xor eax, eax
inc eax
mov dword [esi + 0x110], eax
jmp 0x505077
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._test
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505367
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x505359
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x50535c
xor eax, eax
inc eax
mov dword [esi + 0x11c], eax
jmp 0x505077
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push 0x5d1598
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5053dc
push 0x5d15a0
lea ecx, [ebp - 0x50]
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004ff6f1
sub esp, 0x10
xor edx, edx
mov ecx, esp
push eax
mov dword [ecx], edx
mov dword [ecx + 0x10], edx
mov dword [ecx + 0x14], edx
call fcn.00408766
lea eax, [ebp - 0x68]
push eax
call fcn.005ad700
add esp, 0x1c
lea ecx, [esi + 0x374]
push eax
call fcn.00446faf
lea ecx, [ebp - 0x68]
call fcn.00403f80
jmp 0x505611
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._handle
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505421
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
mov ecx, esi
call fcn.00505e35
jmp 0x5056f1
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._url
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505469
push 0x608be0
lea ecx, [ebp - 0x50]
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004ff6f1
pop ecx
pop ecx
lea ecx, [esi + 0x38c]
jmp 0x50560b
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push 0x5d15c8
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5054b1
push 0x608be0
lea ecx, [ebp - 0x50]
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004ff6f1
pop ecx
pop ecx
lea ecx, [esi + 0x3a4]
jmp 0x50560b
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push 0x5d15d0
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5054f9
push 0x608be0
lea ecx, [ebp - 0x50]
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004ff6f1
pop ecx
pop ecx
lea ecx, [esi + 0x404]
jmp 0x50560b
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._edu
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x505541
push 0x608be0
lea ecx, [ebp - 0x50]
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004ff6f1
pop ecx
pop ecx
lea ecx, [esi + 0x3bc]
jmp 0x50560b
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._PP1
push eax
call fcn.00504c9e
add esp, 0xc
lea ecx, [ebp - 0x38]
test eax, eax
je 0x505587
cmp dword [ebp - 0x24], 8
lea eax, [esi + 0x5b4]
push eax
cmovae ecx, dword [ebp - 0x38]
push 0x5d15f0
push ecx
call fcn.00456dc9
add esp, 0xc
jmp 0x5056f1
cmp dword [ebp - 0xc], 8
lea eax, [ebp - 0x20]
push ecx
cmovae eax, dword [ebp - 0x20]
push str._PP2
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5055c8
cmp dword [ebp - 0x24], 8
lea eax, [ebp - 0x38]
push 0x10
cmovae eax, dword [ebp - 0x38]
push 0
push eax
call fcn.00567caa
add esp, 0xc
mov dword [esi + 0x5b8], eax
jmp 0x5056f1
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._unzip
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x50561e
push 0x608be0
lea ecx, [ebp - 0x50]
call fcn.0040921d
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.004ff6f1
pop ecx
pop ecx
lea ecx, [esi + 0x464]
push eax
call fcn.004065d3
lea ecx, [ebp - 0x50]
call fcn.00403f80
jmp 0x5056f1
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._setdefbrowser
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x50567e
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.00408766
cmp dword [ebp - 0x40], 0
je 0x505670
cmp dword [ebp - 0x3c], 8
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.0055584e
pop ecx
jmp 0x505673
xor eax, eax
inc eax
mov dword [esi + 0x104], eax
jmp 0x505077
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._downloader
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5056b8
cmp dword [ebp - 0x24], 8
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.0055584e
mov dword [esi + 0x128], eax
jmp 0x5056f0
cmp dword [ebp - 0xc], 8
lea ecx, [ebp - 0x38]
push ecx
lea eax, [ebp - 0x20]
cmovae eax, dword [ebp - 0x20]
push str._installmode
push eax
call fcn.00504c9e
add esp, 0xc
test eax, eax
je 0x5056f1
cmp dword [ebp - 0x24], 8
lea eax, [ebp - 0x38]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.0055584e
mov dword [esi + 0x140], eax
pop ecx
lea ecx, [ebp - 0x20]
call fcn.00403f80
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
inc edi
cmp edi, edx
jl 0x504f32
cmp ecx, 8
jb 0x505743
lea ecx, [ecx*2 + 2]
mov dword [ebp - 8], eax
mov dword [ebp + 8], ecx
cmp ecx, 0x1000
jb 0x50573a
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00403fef
mov eax, dword [ebp - 8]
pop ecx
pop ecx
mov ecx, dword [ebp + 8]
push ecx
push eax
call fcn.00541bf5
pop ecx
pop ecx
mov al, 1
pop edi
pop esi
pop ebx
leave
ret 4