Function at 0x403200
Capabilities:
Enumerate files on windows
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4b661f
mov eax, dword fs:[0]
push eax
mov eax, 0x116c
call fcn.004774d0
mov eax, dword [0x4f4930]
xor eax, esp
mov dword [esp + 0x1168], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4f4930]
xor eax, esp
push eax
lea eax, [esp + 0x1180]
mov dword fs:[0], eax
mov esi, ecx
xor ebx, ebx
mov dword [esp + 0x34], ecx
cmp esi, ebx
je 0x403250
cmp word [esi], bx
jne 0x403259
mov esi, 0x4cb540
mov dword [esp + 0x34], esi
push 0x4cb540
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403277
mov byte [0x4fe130], 1
jmp 0x404ab1
push 0x1014
call fcn.004706a8
add esp, 4
cmp eax, ebx
je 0x4032c2
xor ecx, ecx
xor edx, edx
mov dword [eax], ebx
mov word [eax + 4], cx
mov word [eax + 0x404], dx
mov word [eax + 0x804], cx
mov dword [eax + 0x1004], ebx
mov dword [eax + 0x1008], ebx
mov byte [eax + 0x1010], cl
mov byte [eax + 0x1011], cl
mov dword [eax + 0x100c], ebx
mov ebp, eax
jmp 0x4032c4
xor ebp, ebp
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
push 0x20
push esi
lea edx, [esp + 0x24]
push edx
mov dword [esp + 0x1194], ebx
call fcn.0041b660
xor esi, esi
cmp dword [esp + 0x28], ebx
jle 0x403bce
mov edi, dword [esp + 0x24]
cmp esi, ebx
jl 0x40330b
cmp esi, dword [esp + 0x28]
jge 0x40330b
cmp edi, ebx
je 0x40330b
mov eax, dword [edi + esi*4]
jmp 0x40330d
xor eax, eax
push str._silent
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x40332b
mov byte [ebp + 0x1010], 1
jmp 0x403bc3
cmp esi, ebx
jl 0x40333e
cmp esi, dword [esp + 0x28]
jge 0x40333e
cmp edi, ebx
je 0x40333e
mov eax, dword [edi + esi*4]
jmp 0x403340
xor eax, eax
push str._overwrite
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x40335e
mov byte [ebp + 0x1011], 1
jmp 0x403bc3
cmp esi, ebx
jl 0x403371
cmp esi, dword [esp + 0x28]
jge 0x403371
cmp edi, ebx
je 0x403371
mov eax, dword [edi + esi*4]
jmp 0x403373
xor eax, eax
push str._install
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4033c1
inc esi
cmp esi, ebx
mov dword [ebp], 2
jl 0x4033a0
cmp esi, dword [esp + 0x28]
jge 0x4033a0
cmp edi, ebx
je 0x4033a0
mov eax, dword [edi + esi*4]
jmp 0x4033a2
xor eax, eax
push 0x3ff
push eax
lea eax, [ebp + 0x804]
push 0x400
push eax
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
cmp esi, ebx
jl 0x4033d4
cmp esi, dword [esp + 0x28]
jge 0x4033d4
cmp edi, ebx
je 0x4033d4
mov eax, dword [edi + esi*4]
jmp 0x4033d6
xor eax, eax
push str._install2
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403417
inc esi
cmp esi, ebx
mov dword [ebp], 3
jl 0x40340b
cmp esi, dword [esp + 0x28]
jge 0x40340b
cmp edi, ebx
je 0x40340b
mov eax, dword [edi + esi*4]
push 0x3ff
jmp 0x403b4a
xor eax, eax
push 0x3ff
jmp 0x403b4a
cmp esi, ebx
jl 0x40342a
cmp esi, dword [esp + 0x28]
jge 0x40342a
cmp edi, ebx
je 0x40342a
mov eax, dword [edi + esi*4]
jmp 0x40342c
xor eax, eax
push str._config
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403495
lea eax, [esi + 1]
cmp eax, ebx
mov dword [ebp], 4
jl 0x40345b
cmp eax, dword [esp + 0x28]
jge 0x40345b
cmp edi, ebx
je 0x40345b
mov eax, dword [edi + eax*4]
jmp 0x40345d
xor eax, eax
push 0x7f
push eax
lea edx, [ebp + 4]
push 0x80
push edx
call fcn.004710fb
add esi, 2
add esp, 0x10
cmp esi, ebx
jl 0x40348c
cmp esi, dword [esp + 0x28]
jge 0x40348c
cmp edi, ebx
je 0x40348c
mov eax, dword [edi + esi*4]
push 0x7f
jmp 0x403674
xor eax, eax
push 0x7f
jmp 0x403674
cmp esi, ebx
jl 0x4034a8
cmp esi, dword [esp + 0x28]
jge 0x4034a8
cmp edi, ebx
je 0x4034a8
mov eax, dword [edi + esi*4]
jmp 0x4034aa
xor eax, eax
push str._docommand
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403542
lea eax, [esi + 1]
cmp eax, ebx
mov dword [ebp], 1
jl 0x4034dd
cmp eax, dword [esp + 0x28]
jge 0x4034dd
cmp edi, ebx
je 0x4034dd
mov eax, dword [edi + eax*4]
jmp 0x4034df
xor eax, eax
push 0x7f
push eax
lea ecx, [ebp + 4]
push 0x80
push ecx
call fcn.004710fb
add esi, 2
add esp, 0x10
cmp esi, ebx
jl 0x403509
cmp esi, dword [esp + 0x28]
jge 0x403509
cmp edi, ebx
je 0x403509
mov eax, dword [edi + esi*4]
jmp 0x40350b
xor eax, eax
push 0x7f
push eax
lea edx, [ebp + 0x404]
push 0x80
push edx
call fcn.004710fb
mov eax, dword [esp + 0x44]
push 0x3ff
push eax
lea ecx, [ebp + 0x804]
push 0x400
push ecx
call fcn.004710fb
add esp, 0x20
jmp 0x403bc3
cmp esi, ebx
jl 0x403555
cmp esi, dword [esp + 0x28]
jge 0x403555
cmp edi, ebx
je 0x403555
mov eax, dword [edi + esi*4]
jmp 0x403557
xor eax, eax
push str._pinyinup
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x40357c
mov dword [ebp], 5
mov byte [0x4fb770], 1
jmp 0x403bc3
push str._setup
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4035a5
mov dword [ebp], 6
jmp 0x403bc3
push str._delete
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4035ce
mov dword [ebp], 7
jmp 0x403bc3
push str._enableallcom
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4035f7
mov dword [ebp], 8
jmp 0x403bc3
push str._disableallcom
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403620
mov dword [ebp], 9
jmp 0x403bc3
push str._retrieve
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x40368e
push 0x7f
lea ecx, [esi + 1]
mov dword [ebp], 0xa
call fcn.0041b860
push eax
lea edx, [ebp + 4]
push 0x80
push edx
call fcn.004710fb
add esp, 0x10
add esi, 2
push 0x7f
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
lea eax, [ebp + 0x404]
push 0x80
push eax
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._retrieveurl
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x4036f8
push 0x7f
lea ecx, [esi + 1]
mov dword [ebp], 0xf
call fcn.0041b860
push eax
lea ecx, [ebp + 4]
push 0x80
push ecx
call fcn.004710fb
add esp, 0x10
add esi, 2
push 0x7f
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
lea edx, [ebp + 0x404]
push 0x80
push edx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._retrievepopup
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403762
push 0x7f
lea ecx, [esi + 1]
mov dword [ebp], 0x10
call fcn.0041b860
push eax
lea eax, [ebp + 4]
push 0x80
push eax
call fcn.004710fb
add esp, 0x10
add esi, 2
push 0x7f
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
lea ecx, [ebp + 0x404]
push 0x80
push ecx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._remove
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x4037a7
inc esi
push 0x7f
mov ecx, esi
mov dword [ebp], 0xb
call fcn.0041b860
push eax
lea edx, [ebp + 4]
push 0x80
push edx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._enablecom
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403811
push 0x7f
lea ecx, [esi + 1]
mov dword [ebp], 0xc
call fcn.0041b860
push eax
lea eax, [ebp + 4]
push 0x80
push eax
call fcn.004710fb
add esp, 0x10
add esi, 2
push 0x7f
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
lea ecx, [ebp + 0x404]
push 0x80
push ecx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._invoke
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403884
push 0x7f
lea ecx, [esi + 1]
mov dword [ebp], 0xd
call fcn.0041b860
push eax
lea edx, [ebp + 4]
push 0x80
push edx
call fcn.004710fb
add esp, 0x10
add esi, 2
push 0x7f
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
lea eax, [ebp + 0x404]
push 0x80
push eax
call fcn.004710fb
add esp, 0x10
xor ecx, ecx
mov word [ebp + 0x804], cx
jmp 0x403bc3
push str._maketheme
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4038a9
mov dword [ebp], 0xe
jmp 0x403bc3
push str._restart
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4038d2
or dword [ebp + 0x1004], 1
jmp 0x403bc3
push str._uwr
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4038fb
or dword [ebp + 0x1004], 2
jmp 0x403bc3
push str._fromexp
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403924
or dword [ebp + 0x1004], 4
jmp 0x403bc3
push str._bymenu
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403972
cmp dword [ebp], 0xd
jne 0x403bc3
push 0x7f
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
lea edx, [ebp + 0x804]
push 0x80
push edx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._byshortcut
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4039c0
cmp dword [ebp], 0xd
jne 0x403bc3
push 0x7f
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
lea eax, [ebp + 0x804]
push 0x80
push eax
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._pname
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403a05
inc esi
push 0x7f
mov ecx, esi
call fcn.0041b860
push eax
lea ecx, [ebp + 0x804]
push 0x80
push ecx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._notifywnd
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403a49
push 0x10
inc esi
lea edx, [esp + 0x30]
push edx
mov ecx, esi
mov dword [esp + 0x34], ebx
call fcn.0041b860
push eax
call fcn.00471731
add esp, 0xc
mov dword [ebp + 0x1008], eax
jmp 0x403bc3
push str._background
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403a6e
or dword [ebp + 0x1004], 8
jmp 0x403bc3
push str._openapp
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403ab7
inc esi
push 0x7f
mov ecx, esi
mov dword [ebp], 0x11
call fcn.0041b860
push eax
lea eax, [ebp + 4]
push 0x80
push eax
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._fromhotkey
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403adc
or dword [ebp + 0x1004], 8
jmp 0x403bc3
push str._notify
mov ecx, esi
lea eax, [esp + 0x20]
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403b19
inc esi
mov ecx, esi
call fcn.0041b860
push eax
call fcn.00471773
add esp, 4
mov dword [ebp + 0x100c], eax
jmp 0x403bc3
push str._param
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403b61
or dword [ebp + 0x1004], 0x10
inc esi
push 0x3ff
mov ecx, esi
call fcn.0041b860
push eax
lea ecx, [ebp + 0x804]
push 0x400
push ecx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._installdoall
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
lea eax, [esp + 0x1c]
jne 0x403ba3
inc esi
push 0x7f
mov ecx, esi
mov dword [ebp], 0x12
call fcn.0041b860
push eax
lea edx, [ebp + 4]
push 0x80
push edx
call fcn.004710fb
add esp, 0x10
jmp 0x403bc3
push str._GetSugglist
mov ecx, esi
call fcn.0041b860
push eax
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x403bc3
mov dword [ebp], 0x13
inc esi
cmp esi, dword [esp + 0x28]
jl 0x4032f8
mov eax, dword [ebp]
cmp eax, 0xa
jne 0x403e3f
lea esi, [ebp + 4]
push esi
push ecx
lea edi, [ebp + 0x404]
call fcn.00401760
add esp, 4
mov edx, edi
mov ecx, eax
call fcn.0045c450
test al, al
je 0x403c0f
lea edi, [esp + 0x1c]
call fcn.0043d6e0
call fcn.0043d720
xor al, al
jmp 0x404ab3
mov byte [esp + 0x1b], 1
mov byte [esp + 0x40], 0
mov dword [esp + 0x3c], ebx
lea ecx, [esp + 0xac]
call fcn.0041bda0
lea eax, [esp + 0xac]
push eax
mov byte [esp + 0x118c], 2
call fcn.0046cf90
mov ecx, eax
call fcn.00403150
push esi
push ecx
call fcn.00401760
add esp, 4
call fcn.004598c0
mov esi, eax
cmp esi, ebx
je 0x403d8c
cmp byte [esi + 0x2c], 0
je 0x403d8c
mov eax, dword [esi + 0x30]
cmp eax, ebx
je 0x403d8c
cmp word [eax], bx
je 0x403d8c
cmp byte [esp + 0x1c8], 0
lea eax, [esp + 0xb8]
jne 0x403c94
mov eax, dword [esp + 0xb4]
add eax, 4
push eax
lea ecx, [esp + 0x428]
call fcn.0041ec10
push 0x4cb7d0
push 0x4d4204
lea edx, [esp + 0x42c]
call fcn.0041f080
mov esi, dword [esi + 0x30]
push esi
push 0x4d4204
lea edx, [esp + 0x434]
call fcn.0041f080
add esp, 0x10
cmp byte [esp + 0x540], 0
lea esi, [esp + 0x430]
jne 0x403cea
mov esi, dword [esp + 0x42c]
lea ecx, [esp + 0x54c]
call fcn.0041ead0
lea eax, [esi + 4]
lea edx, [esp + 0x54c]
call fcn.0041ed00
mov byte [esp + 0x1188], 5
cmp dword [esp + 0x550], ebx
je 0x403d66
lea ecx, [esp + 0x54c]
call fcn.0041c630
test al, al
je 0x403d66
call fcn.00401760
lea edi, [esp + 0x3c]
mov esi, eax
call fcn.0045f850
push ebx
push 1
lea ecx, [esp + 0x554]
call fcn.0041c370
mov ecx, edi
push ecx
push ecx
mov esi, eax
call fcn.00401760
add esp, 4
push eax
mov ecx, esi
call fcn.004569b0
test al, al
jne 0x403ddd
mov ecx, edi
call fcn.0041a4d0
xor bl, bl
lea ecx, [esp + 0x54c]
call fcn.0041ec80
lea ecx, [esp + 0x424]
mov byte [esp + 0x1188], 2
call fcn.0041ec80
test bl, bl
jne 0x403ded
mov eax, dword [ebp + 0x1004]
mov edx, dword [ebp + 0x100c]
mov ecx, eax
push edx
shr ecx, 3
and cl, 1
movzx edx, cl
mov ecx, dword [ebp + 0x1008]
push edx
shr eax, 1
push ecx
and al, 1
movzx eax, al
lea edx, [ebp + 0x804]
push edx
push eax
lea eax, [ebp + 0x404]
push eax
push 0x4cb7d4
lea eax, [ebp + 4]
push eax
call fcn.00408a60
push ebp
mov bl, al
call fcn.0046fda3
add esp, 4
jmp 0x403df1
mov bl, 1
mov byte [esp + 0x1b], bl
call fcn.0040cca0
jmp 0x403d68
mov bl, byte [esp + 0x1b]
cmp byte [esp + 0x1c8], 0
mov dword [esp + 0xac], 0x4d4d70
jne 0x403e21
mov eax, dword [esp + 0xb4]
lea ecx, [esp + 0xb8]
cmp eax, ecx
je 0x403e21
push eax
call fcn.00470027
add esp, 4
lea ecx, [esp + 0x3c]
call fcn.0041a420
lea edi, [esp + 0x1c]
call fcn.0043d6e0
call fcn.0043d720
mov al, bl
jmp 0x404ab3
cmp eax, 0xf
je 0x40480d
cmp eax, 0x10
je 0x40480d
cmp eax, 0x11
jne 0x403fe7
mov byte [esp + 0x40], 0
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x1188], 0xa
call fcn.00401760
call fcn.0045c010
lea ecx, [esp + 0x2fc]
mov esi, eax
call fcn.0041ead0
mov eax, esi
lea edx, [esp + 0x2fc]
mov byte [esp + 0x1188], 0xb
call fcn.0041ed00
push ebx
push ebx
push ebx
push ebx
push ebx
push str.SGTool.exe
lea ecx, [esp + 0x1ec]
call fcn.0041be00
cmp byte [esp + 0x2f0], 0
lea eax, [esp + 0x1e0]
jne 0x403ec7
mov eax, dword [esp + 0x1dc]
cmp word [eax + 4], 0x2e
jne 0x403ee3
lea ecx, [esp + 0x1d4]
lea esi, [esp + 0x2fc]
call fcn.0041ce30
jmp 0x403ef7
lea edx, [esp + 0x1d4]
push edx
lea ecx, [esp + 0x300]
call fcn.0041c430
cmp byte [esp + 0x2f0], 0
mov esi, 0x4d4d70
mov dword [esp + 0x1d4], esi
jne 0x403f28
mov eax, dword [esp + 0x1dc]
lea ecx, [esp + 0x1e0]
cmp eax, ecx
je 0x403f28
push eax
call fcn.00470027
add esp, 4
lea ecx, [esp + 0xac]
call fcn.0041ead0
lea edx, [ebp + 4]
push edx
push str.__appidpandorabox__openapp__s
lea edi, [esp + 0xb4]
mov byte [esp + 0x1190], 0xd
call fcn.0041f0a0
add esp, 8
cmp byte [esp + 0x1c8], 0
lea eax, [esp + 0xb8]
jne 0x403f6c
mov eax, dword [esp + 0xb4]
add eax, 4
push eax
call fcn.0044f870
add esp, 4
push ebp
call fcn.0046fda3
add esp, 4
cmp byte [esp + 0x1c8], 0
mov dword [esp + 0xac], esi
jne 0x403fad
mov eax, dword [esp + 0xb4]
lea ecx, [esp + 0xb8]
cmp eax, ecx
je 0x403fad
push eax
call fcn.00470027
add esp, 4
cmp byte [esp + 0x418], 0
mov dword [esp + 0x2fc], esi
jne 0x403fd9
mov eax, dword [esp + 0x304]
lea edx, [esp + 0x308]
cmp eax, edx
je 0x403fd9
push eax
call fcn.00470027
add esp, 4
lea ecx, [esp + 0x3c]
call fcn.0041a420
jmp 0x404aa3
cmp eax, 0x13
jne 0x40400b
push 0x4fe158
mov dword [0x4fe208], 1
call fcn.00409ab0
push ebp
call fcn.0046fda3
jmp 0x404aa0
cmp eax, 0x12
jne 0x4047f4
mov byte [esp + 0x40], 0
mov dword [esp + 0x3c], ebx
lea eax, [ebp + 0x804]
push eax
lea ecx, [esp + 0x550]
call fcn.0041ec10
mov byte [esp + 0x1188], 0xf
cmp dword [esp + 0x550], ebx
je 0x4047bd
xor ebx, ebx
xor edi, edi
mov edx, fcn.00470104
mov ecx, fcn.00470421
mov eax, fcn.00470027
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
lea ecx, [esp + 0x424]
mov byte [esp + 0x1b], 0
mov byte [esp + 0x33], 0
call fcn.0041ead0
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
push 0x20
lea ecx, [esp + 0x550]
mov byte [esp + 0x118c], 0x13
call fcn.0041c370
push eax
lea ecx, [esp + 0x4c]
push ecx
call fcn.0041b660
cmp dword [esp + 0x50], ebx
mov dword [esp + 0x34], ebx
jle 0x404395
mov edi, 1
mov dword [esp + 0x2c], edi
nop
test ebx, ebx
jl 0x40437d
cmp ebx, dword [esp + 0x50]
jge 0x40437d
cmp dword [esp + 0x4c], 0
je 0x40437d
mov edx, dword [esp + 0x4c]
mov esi, dword [edx + ebx*4]
test esi, esi
je 0x40437d
push str._setup
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x404153
call fcn.00405370
push str._rdele
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x40416f
mov byte [esp + 0x1b], 1
jmp 0x40437d
push str._pluginlist
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x404250
mov ecx, edi
lea eax, [esp + 0x44]
call fcn.0041b860
test eax, eax
je 0x404250
lea edi, [esp + 0x74]
call fcn.00406410
xor esi, esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
mov byte [esp + 0x1188], 0x14
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x44]
call fcn.0041b860
push 0x23
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.0041b660
mov edi, dword [esp + 0x60]
cmp edi, esi
jle 0x404224
mov ebx, dword [esp + 0x5c]
test esi, esi
jl 0x4041f2
cmp esi, edi
jge 0x4041f2
test ebx, ebx
je 0x4041f2
mov eax, dword [ebx + esi*4]
jmp 0x4041f4
xor eax, eax
push eax
lea ecx, [esp + 0x778]
call fcn.0041ec10
push eax
lea eax, [esp + 0x78]
mov byte [esp + 0x118c], 0x15
call fcn.004063a0
lea ecx, [esp + 0x774]
call fcn.0041ec80
inc esi
cmp esi, edi
jl 0x4041e1
mov eax, 1
add dword [esp + 0x34], eax
add dword [esp + 0x2c], eax
lea edi, [esp + 0x54]
mov byte [esp + 0x1188], 0x13
call fcn.0043d6e0
call fcn.0043d720
mov ebx, dword [esp + 0x34]
jmp 0x404379
push str._installplu
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x4042c3
mov ecx, edi
lea eax, [esp + 0x44]
call fcn.0041b860
test eax, eax
je 0x4042c3
lea ecx, [esp + 0x424]
call fcn.0041ecb0
mov ecx, edi
lea eax, [esp + 0x44]
call fcn.0041b860
push eax
push 0x4d4204
lea edx, [esp + 0x42c]
call fcn.0041f080
add esp, 8
lea ecx, [esp + 0x424]
call fcn.0041c370
push eax
call fcn.00471773
add esp, 4
cmp eax, 2
jne 0x4042bc
mov byte [esp + 0x33], 1
inc ebx
inc edi
jmp 0x40437d
push str._removelist
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x40437d
mov ecx, edi
lea eax, [esp + 0x44]
call fcn.0041b860
test eax, eax
je 0x40437d
xor esi, esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], esi
push 0x23
push eax
lea ecx, [esp + 0x6c]
push ecx
mov byte [esp + 0x1194], 0x16
call fcn.0041b660
mov edi, dword [esp + 0x70]
test edi, edi
jle 0x40435e
jmp 0x404320
mov ecx, esi
lea eax, [esp + 0x64]
call fcn.0041b860
push eax
lea ecx, [esp + 0x778]
call fcn.0041ec10
push eax
lea eax, [esp + 0x94]
mov byte [esp + 0x118c], 0x17
call fcn.004063a0
lea ecx, [esp + 0x774]
call fcn.0041ec80
inc esi
cmp esi, edi
jl 0x404320
inc dword [esp + 0x2c]
lea edi, [esp + 0x64]
inc ebx
mov byte [esp + 0x1188], 0x13
call fcn.0043d6e0
call fcn.0043d720
mov edi, dword [esp + 0x2c]
inc ebx
inc edi
cmp ebx, dword [esp + 0x50]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x2c], edi
jl 0x404110
mov edi, dword [esp + 0x78]
lea ecx, [esp + 0x2fc]
call fcn.0041ead0
lea esi, [ebp + 4]
mov eax, esi
lea edx, [esp + 0x2fc]
call fcn.0041ed00
lea ecx, [esp + 0x1d4]
call fcn.0041ead0
mov eax, esi
lea edx, [esp + 0x1d4]
mov byte [esp + 0x1188], 0x1a
call fcn.0041ed00
push 0
push 0
push 0
push 0
push 0
push 0x4cbad0
lea ecx, [esp + 0xc4]
call fcn.0041be00
cmp byte [esp + 0x1c8], 0
lea eax, [esp + 0xb8]
jne 0x404407
mov eax, dword [esp + 0xb4]
cmp word [eax + 4], 0x2e
jne 0x404423
lea ecx, [esp + 0xac]
lea esi, [esp + 0x1d4]
call fcn.0041ce30
jmp 0x404437
lea edx, [esp + 0xac]
push edx
lea ecx, [esp + 0x1d8]
call fcn.0041c430
cmp byte [esp + 0x1c8], 0
mov dword [esp + 0xac], 0x4d4d70
jne 0x404467
mov eax, dword [esp + 0xb4]
lea ecx, [esp + 0xb8]
cmp eax, ecx
je 0x404467
push eax
call fcn.00470027
add esp, 4
mov byte [esp + 0x1188], 0x1b
cmp byte [esp + 0x2f0], 0
lea eax, [esp + 0x1e0]
jne 0x404487
mov eax, dword [esp + 0x1dc]
push 0x5075f0
add eax, 4
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp dword [esp + 0x300], 0
mov esi, eax
mov dword [esp + 0x34], esi
je 0x404609
lea ecx, [esp + 0x2fc]
call fcn.0041c660
test al, al
je 0x404609
cmp esi, 0xffffffff
je 0x404609
mov ebx, dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov ecx, 0x4cb12c
mov eax, 0x50761c
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4044fd
test dx, dx
je 0x4044f9
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4044fd
add eax, 4
add ecx, 4
test dx, dx
jne 0x4044d7
xor eax, eax
jmp 0x404502
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4045f5
mov ecx, 0x4cb130
mov eax, 0x50761c
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40453a
test dx, dx
je 0x404536
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40453a
add eax, 4
add ecx, 4
test dx, dx
jne 0x404514
xor eax, eax
jmp 0x40453f
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4045f5
push 0
push 0
push 0
push 0
push 0x50761c
lea ecx, [esp + 0x310]
call fcn.0041c370
push eax
lea ecx, [esp + 0x78c]
call fcn.0041be00
lea ecx, [esp + 0x774]
mov byte [esp + 0x1188], 0x1c
call fcn.0041c630
test al, al
je 0x4045e1
lea ecx, [esp + 0x774]
call fcn.0041c370
test edi, edi
je 0x4045a3
push eax
lea esi, [esp + 0x78]
call fcn.00405820
test al, al
jne 0x4045e1
movzx edx, byte [ebp + 0x1010]
push edx
lea ecx, [esp + 0x778]
call fcn.0041c370
mov cl, byte [ebp + 0x1011]
push eax
mov eax, 5
lea edx, [esp + 0x44]
call fcn.00405890
cmp byte [esp + 0x1b], 0
je 0x4045e1
push 0
lea ecx, [esp + 0x778]
call fcn.0041c910
lea ecx, [esp + 0x774]
mov byte [esp + 0x1188], 0x1b
call fcn.0041ec80
mov eax, dword [esp + 0x34]
push 0x5075f0
push eax
call ebx
test eax, eax
jne 0x4044cd
cmp dword [esp + 0x94], 0
jle 0x404684
mov esi, dword [esp + 0x90]
mov ebx, dword [esp + 0x94]
add esi, 0xc
mov al, byte [esi + 0x110]
mov ecx, esi
test al, al
jne 0x404633
mov ecx, dword [esi - 4]
add ecx, 4
je 0x404679
test al, al
mov eax, esi
jne 0x404641
mov eax, dword [esi - 4]
add eax, 4
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00401760
mov ecx, eax
call fcn.00458b40
test al, al
jne 0x404679
cmp byte [ebp + 0x1010], al
jne 0x404679
push 0x4cbad8
lea ecx, [esp + 0x40]
call fcn.00403120
lea edi, [esp + 0x3c]
call fcn.0041a680
add esi, 0x124
sub ebx, 1
jne 0x404624
cmp byte [esp + 0x33], 0
je 0x4046da
cmp byte [esp + 0x418], 0
movzx edx, byte [ebp + 0x1010]
movzx eax, byte [ebp + 0x1011]
push edx
push 5
push eax
lea ecx, [esp + 0x80]
push ecx
lea eax, [esp + 0x318]
jne 0x4046bd
mov eax, dword [esp + 0x314]
sub esp, 0x124
add eax, 4
mov ecx, esp
mov dword [esp + 0x160], esp
push eax
call fcn.0041ec10
call fcn.00405950
mov eax, dword [esp + 0x34]
cmp eax, 0xffffffff
je 0x4046ea
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
cmp byte [esp + 0x1b], 0
je 0x4046fd
lea ecx, [esp + 0x2fc]
call fcn.0041c970
cmp byte [esp + 0x2f0], 0
mov esi, 0x4d4d70
mov dword [esp + 0x1d4], esi
jne 0x40472e
mov eax, dword [esp + 0x1dc]
lea edx, [esp + 0x1e0]
cmp eax, edx
je 0x40472e
push eax
call fcn.00470027
add esp, 4
cmp byte [esp + 0x418], 0
mov dword [esp + 0x2fc], esi
jne 0x40475a
mov eax, dword [esp + 0x304]
lea ecx, [esp + 0x308]
cmp eax, ecx
je 0x40475a
push eax
call fcn.00470027
add esp, 4
lea edi, [esp + 0x44]
call fcn.0043d6e0
call fcn.0043d720
cmp byte [esp + 0x540], 0
mov dword [esp + 0x424], 0x4d4d70
jne 0x404798
mov eax, dword [esp + 0x42c]
lea edx, [esp + 0x430]
cmp eax, edx
je 0x404798
push eax
call fcn.00470027
add esp, 4
lea edi, [esp + 0x90]
mov byte [esp + 0x1188], 0x10
call fcn.00406410
lea edi, [esp + 0x74]
mov byte [esp + 0x1188], 0xf
call fcn.00406410
push ebp
call fcn.0046fda3
add esp, 4
cmp byte [esp + 0x668], 0
mov dword [esp + 0x54c], 0x4d4d70
jne 0x403fd9
mov eax, dword [esp + 0x554]
lea ecx, [esp + 0x558]
cmp eax, ecx
jmp 0x403fce
mov ecx, ebp
call fcn.00404ae0
mov bl, al
lea eax, [esp + 0x1c]
call fcn.0043d4d0
mov al, bl
jmp 0x404ab3
push 0x7fe
lea eax, [esp + 0x982]
xor edx, edx
push ebx
push eax
mov word [esp + 0x988], dx
call fcn.00476c30
add esp, 0xc
push 0x7e
lea edx, [esp + 0x67a]
xor ecx, ecx
push ebx
push edx
mov word [esp + 0x680], cx
call fcn.00476c30
add esp, 0xc
push 0x7e
lea ecx, [esp + 0x6fa]
xor eax, eax
push ebx
push ecx
mov word [esp + 0x700], ax
call fcn.00476c30
add esp, 0xc
push 0x206
lea eax, [esp + 0x77a]
xor edx, edx
push ebx
push eax
mov word [esp + 0x780], dx
call fcn.00476c30
add esp, 0xc
call fcn.00401760
cmp word [eax + 0x8ec], bx
lea esi, [eax + 0x8ec]
jne 0x4048b8
cmp dword [eax + 0xaf4], ebx
je 0x4048b8
mov eax, dword [eax + 0xaf4]
mov edx, dword [eax]
push 0x104
mov ecx, eax
mov eax, dword [edx + 0x20]
push esi
call eax
push esi
push str._sSGTool.exe
lea ecx, [esp + 0x77c]
push 0x104
push ecx
call fcn.0046fdbd
add esp, 0x10
lea ecx, [esp + 0x1d4]
call fcn.0041ead0
lea eax, [esp + 0x774]
lea edx, [esp + 0x1d4]
call fcn.0041ed00
mov byte [esp + 0x38], 0
mov dword [esp + 0x34], 0
lea esi, [ebp + 4]
mov byte [esp + 0x1188], 8
mov ebx, 0x4d4d70
test esi, esi
je 0x4049ef
lea edx, [esp + 0x97c]
push edx
lea eax, [ebp + 0x404]
push eax
push esi
lea edx, [esp + 0x700]
lea ecx, [esp + 0x680]
call fcn.0040b2a0
test al, al
je 0x4049ef
lea ecx, [esp + 0xac]
call fcn.0041ead0
lea ecx, [esp + 0x6f4]
push ecx
lea edx, [esp + 0x980]
push edx
lea eax, [esp + 0x67c]
push eax
push str.__line_2__border_0__upc__p__s___p__s___p__s_
lea edi, [esp + 0xbc]
mov byte [esp + 0x1198], 9
call fcn.0041f0a0
add esp, 0x10
cmp byte [esp + 0x1c8], 0
lea eax, [esp + 0xb8]
jne 0x40499a
mov eax, dword [esp + 0xb4]
push 5
add eax, 4
push eax
lea ecx, [esp + 0x3c]
push ecx
mov edx, 0x4cb53c
lea ecx, [esp + 0x1e0]
call fcn.0041d840
cmp byte [esp + 0x1c8], 0
mov dword [esp + 0xac], ebx
jne 0x404a65
mov eax, dword [esp + 0xb4]
lea edx, [esp + 0xb8]
cmp eax, edx
je 0x404a65
push eax
call fcn.00470027
add esp, 4
jmp 0x404a65
push str.sogouflashbundle
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x404a0a
push 5
push 0x4cb878
jmp 0x404a4f
push str.handinputbundle
push esi
call fcn.0046ff94
add esp, 8
test eax, eax
jne 0x404a2a
push 5
push 0x4cb8f8
lea ecx, [esp + 0x3c]
push ecx
jmp 0x404a54
push str.mousegesturebundle
push esi
call fcn.0046ff94
add esp, 8
push 5
test eax, eax
jne 0x404a4a
push 0x4cb978
lea edx, [esp + 0x3c]
push edx
jmp 0x404a54
push str.__line_2__border_0__upc__p____p____p__
lea eax, [esp + 0x3c]
push eax
mov edx, 0x4cb53c
lea ecx, [esp + 0x1e0]
call fcn.0041d840
push ebp
call fcn.0046fda3
add esp, 4
lea ecx, [esp + 0x34]
call fcn.0041a420
cmp byte [esp + 0x2f0], 0
mov dword [esp + 0x1d4], ebx
jne 0x404aa3
mov eax, dword [esp + 0x1dc]
lea ecx, [esp + 0x1e0]
cmp eax, ecx
je 0x404aa3
push eax
call fcn.00470027
add esp, 4
lea edi, [esp + 0x1c]
call fcn.0043d6e0
call fcn.0043d720
mov al, 1
mov ecx, dword [esp + 0x1180]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1168]
xor ecx, esp
call fcn.0046fdae
add esp, 0x1178
ret