Function at 0x4cdf90
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x588606
mov eax, dword fs:[0]
push eax
sub esp, 0x36c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5e95e0]
xor eax, esp
push eax
lea eax, [esp + 0x380]
mov dword fs:[0], eax
mov ebp, ecx
mov dword [esp + 0x40], ebp
mov esi, dword [ebp + 0x48]
test esi, esi
je 0x4cdff6
mov eax, esi
lea ecx, [ebp + 0xa4]
lea edi, [eax + 2]
jmp 0x4cdfe0
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x4cdfe0
sub eax, edi
sar eax, 1
push eax
push esi
call fcn.00402250
mov eax, dword [ebp + 0x64]
push eax
lea ecx, [esp + 0x28]
call fcn.00402390
mov dword [esp + 0x388], 0
mov ecx, dword [esp + 0x24]
push 0x5c
push ecx
call fcn.0055238d
add esp, 8
or edi, 0xffffffff
test eax, eax
jne 0x4ce028
mov eax, edi
jmp 0x4ce02e
sub eax, dword [esp + 0x24]
sar eax, 1
push eax
lea edx, [esp + 0x24]
push edx
lea ecx, [esp + 0x2c]
call fcn.0040dce0
push eax
mov ecx, 0x5f2868
mov byte [esp + 0x38c], 1
call fcn.00402310
mov byte [esp + 0x388], 0
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, edi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce077
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x5958a8
lea ecx, [esp + 0x3c]
push 0x5f2868
push ecx
call fcn.00401ba0
add esp, 0xc
mov byte [esp + 0x388], 2
mov edx, dword [ebp + 0x60]
push edx
push eax
lea eax, [esp + 0x34]
push eax
call fcn.00401ba0
add esp, 0xc
push str..exe
push eax
lea ecx, [esp + 0x28]
mov bl, 3
push ecx
mov byte [esp + 0x394], bl
call fcn.00401ba0
add esp, 0xc
push eax
mov ecx, 0x5f2864
mov byte [esp + 0x38c], 4
call fcn.00402310
mov byte [esp + 0x388], bl
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
mov ecx, edi
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4ce0fd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x388], 2
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, edi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce124
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x388], 0
mov eax, dword [esp + 0x38]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, edi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce14b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp + 0x60]
push ecx
lea ecx, [esp + 0x30]
call fcn.00402390
push str..exe
push eax
lea edx, [esp + 0x28]
mov bl, 5
push edx
mov byte [esp + 0x394], bl
call fcn.00401ba0
add esp, 0xc
push eax
mov ecx, 0x5f2860
mov byte [esp + 0x38c], 6
call fcn.00402310
mov byte [esp + 0x388], bl
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, edi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce1ad
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x388], 0
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
mov edx, edi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce1d4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, 0x5f23e0
call fcn.00412e00
test eax, eax
jne 0x4ce21f
mov dword [esp + 0x388], edi
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edi
dec edi
test edi, edi
jg 0x4ce206
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
xor eax, eax
mov ecx, dword [esp + 0x380]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x5f2214]
cmp dword [ecx - 0xc], 0
je 0x4ce23a
push 0x5f2214
mov ecx, 0x5f21f0
call fcn.00402310
mov edx, dword [ebp + 0x50]
push edx
call fcn.00552ca0
mov eax, dword [0x5f21f0]
add esp, 4
push eax
call fcn.005562ed
mov dword [ebp + 0x50], eax
mov eax, dword [0x5f21f0]
add esp, 4
cmp dword [eax - 0xc], 0
jl 0x4ce285
push 0x5b9764
push eax
call fcn.00552eeb
add esp, 8
test eax, eax
je 0x4ce285
sub eax, dword [0x5f21f0]
sar eax, 1
js 0x4ce285
push 0x5b976c
jmp 0x4ce28a
push 0x5b9778
mov ecx, 0x5f21f8
call fcn.004021d0
mov eax, dword [ebp + 0xa4]
mov ecx, dword [eax - 0xc]
add ebp, 0xa4
xor esi, esi
test ecx, ecx
mov ebx, vtable.CDlg360Warn.0
jl 0x4ce371
push str._setdefault
push eax
call fcn.00552eeb
add esp, 8
test eax, eax
je 0x4ce371
sub eax, dword [ebp]
sar eax, 1
js 0x4ce371
call fcn.00462930
test eax, eax
je 0x4ce318
push esi
push 0x132
lea ecx, [esp + 0x84]
call fcn.0053b652
mov dword [esp + 0x7c], ebx
lea ecx, [esp + 0x7c]
mov byte [esp + 0x388], 7
call fcn.0053bd19
mov byte [esp + 0x388], 0
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], ebx
call fcn.0053b5c7
push str.TangoBrowser
lea ecx, [esp + 0x24]
call fcn.00402390
mov byte [esp + 0x388], 8
mov ecx, dword [0x5f21f0]
mov edx, dword [0x5f2864]
push ecx
push edx
push eax
call fcn.004b7970
mov byte [esp + 0x394], 0
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
add esp, 0xc
lea ecx, [eax + 0xc]
mov edx, edi
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce36c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, 1
mov eax, dword [ebp]
cmp dword [eax - 0xc], 0
jl 0x4ce3a6
push str._setshortcut
push eax
call fcn.00552eeb
add esp, 8
test eax, eax
je 0x4ce3a6
sub eax, dword [ebp]
sar eax, 1
js 0x4ce3a6
push 1
push 1
push 1
call fcn.004e0e10
add esp, 0xc
mov esi, 1
mov eax, dword [ebp]
cmp dword [eax - 0xc], 0
jl 0x4ce3d2
push str._sethome
push eax
call fcn.00552eeb
add esp, 8
test eax, eax
je 0x4ce3d2
sub eax, dword [ebp]
sar eax, 1
js 0x4ce3d2
call fcn.004cdc80
jmp 0x4ce1e2
test esi, esi
jne 0x4ce1e2
mov eax, dword [ebp]
cmp dword [eax - 0xc], esi
mov edi, 1
jl 0x4ce497
push str.WEBTASK:
push eax
call fcn.00552eeb
add esp, 8
test eax, eax
je 0x4ce497
sub eax, dword [ebp]
sar eax, 1
jne 0x4ce497
mov eax, dword [ebp]
xor edi, edi
cmp dword [eax - 0xc], 8
jle 0x4ce490
add eax, 0x10
push 0x7c
push eax
call fcn.00552f60
add esp, 8
test eax, eax
je 0x4ce490
sub eax, dword [ebp]
sar eax, 1
mov esi, eax
test esi, esi
jle 0x4ce490
lea ecx, [esi - 8]
push ecx
push 8
lea edx, [esp + 0x28]
push edx
mov ecx, ebp
call fcn.004269f0
mov eax, dword [eax]
push eax
call fcn.00552f5b
add esp, 4
lea ecx, [esp + 0x20]
mov dword [0x5f2220], eax
call fcn.004a4690
mov eax, dword [ebp]
mov eax, dword [eax - 0xc]
sub eax, esi
sub eax, 1
push eax
lea ecx, [esp + 0x24]
push ecx
mov ecx, ebp
call fcn.00401a60
mov eax, dword [eax]
push eax
call fcn.00552f5b
add esp, 4
lea ecx, [esp + 0x20]
mov dword [0x5f2224], eax
call fcn.004a4690
mov ecx, ebp
call fcn.00402160
xor esi, esi
test edi, edi
je 0x4ce638
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4ce4b0
push str.Tango3
push 0
call dword [sym.imp.USER32.dll_FindWindowW]
mov ebx, eax
test ebx, ebx
je 0x4ce638
mov edx, dword [0x5f2864]
push edx
lea ecx, [esp + 0x20]
mov dword [esp + 0x20], 0
call fcn.00450d90
add esp, 4
test eax, eax
je 0x4ce638
mov eax, dword [ebp]
sub eax, 0x10
push eax
call fcn.004020f0
add eax, 0x10
add esp, 4
mov dword [esp + 0x18], eax
push 0x592720
push 0x5a7eb0
lea eax, [esp + 0x20]
push eax
mov byte [esp + 0x394], 9
call fcn.0041cd10
mov eax, dword [ebp]
cmp dword [eax - 0xc], 0
jl 0x4ce582
push str._rerun
push eax
call fcn.00552eeb
add esp, 8
test eax, eax
je 0x4ce582
sub eax, dword [ebp]
sar eax, 1
js 0x4ce582
cmp esi, 0x28
jg 0x4ce610
push 0x1f4
call edi
mov byte [esp + 0x388], 0
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
add esi, 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce4b0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x4ce4b0
mov edi, dword [esp + 0x1c]
test edi, edi
jne 0x4ce58c
mov edi, ebx
push edi
call dword [sym.imp.USER32.dll_IsHungAppWindow]
test eax, eax
jne 0x4ce610
push edi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov esi, dword [esp + 0x18]
lea edx, [esp + 0x4c]
push edx
push 0
mov dword [esp + 0x54], 0
mov eax, dword [esi - 0xc]
push 0x4a
lea ecx, [eax + eax]
push edi
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [esi - 0x10]
mov byte [esp + 0x388], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce5ec
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0x388], 0xffffffff
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jmp 0x4ce1fa
mov byte [esp + 0x388], 0
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce638
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp]
cmp dword [eax - 0xc], 0
jl 0x4ce661
push str._rerun
push eax
call fcn.00552eeb
add esp, 8
test eax, eax
je 0x4ce661
sub eax, dword [ebp]
sar eax, 1
js 0x4ce661
mov ecx, ebp
call fcn.00402160
call fcn.00543045
test eax, eax
jne 0x4ce69a
push eax
push eax
push 0x5b97dc
call fcn.00539414
mov dword [esp + 0x388], 0xffffffff
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jmp 0x4ce1fa
push str.TangoBrowser_3BCFE9D1_6D61_4cb6_9D0B_3BB3F643CA82
call dword [sym.imp.USER32.dll_RegisterClipboardFormatW]
push 0
mov dword [0x5f2cf4], eax
call dword [sym.imp.ole32.dll_CoInitialize]
mov esi, dword [esp + 0x40]
push 0
mov dword [esi + 0x110], eax
call fcn.005431fd
test eax, eax
jne 0x4ce6d0
push eax
push eax
push str.Socket_init_error_
jmp 0x4ce671
lea ecx, [esp + 0x44]
push ecx
mov dword [esp + 0x48], 8
mov dword [esp + 0x4c], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
push 0
call fcn.00543c13
add esp, 4
lea ecx, [esp + 0x58]
call fcn.00542d47
lea edx, [esp + 0x58]
push edx
mov ecx, esi
mov byte [esp + 0x38c], 0xa
call fcn.00542213
call fcn.00540c9e
mov ecx, esi
call fcn.00543143
test eax, eax
jne 0x4ce72d
mov ecx, esi
call fcn.00543162
test eax, eax
je 0x4ce73c
mov dword [esi + 0xa8], 1
call fcn.00540c9e
push 0
call fcn.005536a8
add esp, 4
push eax
call fcn.00556089
add esp, 4
call fcn.004cdcc0
push 0x5f2a48
mov esi, eax
call fcn.004de120
cmp dword [0x5f2a60], 0
je 0x4ce7a0
push 0x5f2878
mov ecx, 0x5f287c
call fcn.00402310
test esi, esi
je 0x4ce786
mov dword [0x5f2348], 0xa
call fcn.00530e1f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x4ce7c2
push 0x80004005
call fcn.00401f70
mov eax, dword [0x5f2a5c]
test eax, eax
jl 0x4ce778
cmp eax, dword [0x5f2a50]
jge 0x4ce7bd
mov ecx, dword [0x5f2a4c]
lea eax, [ecx + eax*4]
push eax
jmp 0x4ce76e
jmp fcn.00530cad
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x34], eax
mov byte [esp + 0x388], 0xb
cmp dword [0x5f2348], 0
mov dword [esp + 0x20], 0
jne 0x4cec65
push str.APPINI
mov ebx, 0x5f2ac0
mov dword [esp + 0x20], 1
call fcn.00472e00
test eax, eax
mov dword [esp + 0x30], eax
jl 0x4ce840
mov ecx, str.FIRSTRUNDLG
mov esi, ebx
call fcn.00472e70
mov ebx, eax
call fcn.00409830
mov edi, eax
call fcn.004098b0
mov ebx, dword [ebx]
push 0x595c28
push ebx
call fcn.005522fc
add esp, 8
test eax, eax
jne 0x4ce840
mov dword [esp + 0x1c], eax
mov ecx, dword [ebp]
cmp dword [ecx - 0xc], 0
jne 0x4ce8a0
cmp dword [esp + 0x1c], 0
je 0x4ce8a0
lea edx, [esp + 0x1fc]
push edx
call fcn.0042e940
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x388], 0xc
call fcn.0053bd19
push 0x5f21ec
lea ecx, [esp + 0x38]
mov dword [esp + 0x24], 1
call fcn.00402310
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x388], 0xb
call fcn.0042ea60
jmp 0x4cea08
mov eax, dword [0x5f287c]
cmp dword [eax - 0xc], 0
jne 0x4ce98c
mov eax, dword [esp + 0x30]
mov ecx, str.USEAPPDIR
mov esi, 0x5f2ac0
call fcn.00472e70
mov ebx, eax
call fcn.00409830
mov edi, eax
call fcn.004098b0
mov ebx, dword [ebx]
push str.TRUE
push ebx
call fcn.005522fc
add esp, 8
test eax, eax
jne 0x4ce902
push 0x5f2878
mov ecx, 0x5f287c
mov dword [0x5f2a60], 1
call fcn.00402310
jmp 0x4ce98c
call fcn.00530e1f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x4ce91c
push 0x80004005
call fcn.00401f70
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x18]
push ecx
mov byte [esp + 0x38c], 0xd
call fcn.004138c0
mov esi, dword [esp + 0x18]
mov ecx, esi
call fcn.004600b0
test eax, eax
jne 0x4ce959
push eax
push esi
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
je 0x4ce968
lea edx, [esp + 0x18]
push edx
mov ecx, 0x5f287c
call fcn.00402310
lea eax, [esi - 0x10]
mov byte [esp + 0x388], 0xb
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ce98c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [0x5f287c]
cmp dword [ecx - 0xc], 0
jne 0x4ce9b1
push 0x5f2878
mov ecx, 0x5f287c
mov dword [0x5f2a60], 1
call fcn.00402310
cmp dword [0x5f2a60], 0
jne 0x4ce9f0
mov ebx, dword [0x5f287c]
push 0
mov edi, 0x5f2a48
call fcn.004aade0
test eax, eax
jge 0x4ce9eb
mov edx, dword [0x5f2a50]
push 0x5f287c
push edx
mov ecx, edi
call fcn.00539068
mov eax, dword [0x5f2a50]
add eax, 0xffffffff
mov dword [0x5f2a5c], eax
mov ecx, 0x5f2a48
call fcn.004ddd30
push 0
push 0
push 1
call fcn.004e0e10
add esp, 0xc
call fcn.00530e1f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x4cea22
push 0x80004005
call fcn.00401f70
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x1c], eax
mov byte [esp + 0x388], 0xe
call fcn.00530e1f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x4cea54
push 0x80004005
call fcn.00401f70
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x30], eax
mov byte [esp + 0x388], 0xf
call fcn.00530e1f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x4cea86
push 0x80004005
call fcn.00401f70
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x18], eax
push 0x24
push str.SOFTWAREMicrosoftInternet_Explorer
lea ecx, [esp + 0x24]
mov byte [esp + 0x390], 0x10
call fcn.00402250
push 7
push 0x598a04
lea ecx, [esp + 0x38]
call fcn.00402250
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x24]
push eax
call fcn.0046b840
mov edi, dword [esp + 0x24]
add esp, 0xc
cmp dword [edi - 0xc], 0
jle 0x4cebf1
call fcn.00530e1f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x4ceafd
push 0x80004005
call fcn.00401f70
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x38], eax
push 1
lea ecx, [esp + 0x30]
push ecx
mov bl, 0x11
lea ecx, [esp + 0x20]
mov byte [esp + 0x390], bl
call fcn.0040dce0
push eax
lea ecx, [esp + 0x3c]
mov byte [esp + 0x38c], 0x12
call fcn.00402310
mov byte [esp + 0x388], bl
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4ceb5f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [esp + 0x38]
push esi
call fcn.00552f5b
add esp, 4
cmp eax, 8
jne 0x4cebcd
push str.SoftwareMicrosoftInternet_ExplorerMainFeatureControlFEATURE_BROWSER_EMULATION
lea ecx, [esp + 0x30]
call fcn.00402390
mov edx, dword [esp + 0x2c]
push 4
lea ecx, [esp + 0x2c]
push ecx
push 4
push str.114Web.exe
push SysReAllocStringLen
mov dword [esp + 0x3c], 0x22b8
call fcn.004b66e0
mov byte [esp + 0x39c], bl
mov eax, dword [esp + 0x40]
add eax, 0xfffffff0
add esp, 0x14
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4cebcd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
mov byte [esp + 0x388], 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cebf1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi - 0x10]
mov byte [esp + 0x388], 0xf
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cec15
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x388], 0xe
mov eax, dword [esp + 0x30]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cec3d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x388], 0xb
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cec65
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [0x5f287c]
cmp dword [ecx - 0xc], 0
je 0x4cec7e
call fcn.004600b0
test eax, eax
jne 0x4ced06
lea ecx, [esp + 0x174]
push ecx
call fcn.0043e6b0
mov byte [esp + 0x388], 0x14
lea ecx, [esp + 0x174]
mov dword [esp + 0x1ec], 1
call fcn.0053bd19
cmp eax, 1
mov byte [esp + 0x388], 0xb
lea ecx, [esp + 0x174]
je 0x4ced01
call fcn.0043e760
mov byte [esp + 0x388], 0xa
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4ceceb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x58]
mov byte [esp + 0x388], 0
call fcn.00542d86
jmp 0x4ce676
call fcn.0043e760
mov ecx, 0x5f23e0
call fcn.00413a40
cmp dword [esp + 0x20], 0
mov ecx, dword [0x5f2ca0]
mov dword [0x5f27a8], ecx
je 0x4ced32
lea edx, [esp + 0x34]
push edx
mov ecx, 0x5f21ec
call fcn.00402310
call fcn.0041b580
cmp dword [0x5f2348], 0
jne 0x4cee11
cmp dword [0x5f2b64], 0
jne 0x4ceec0
mov ecx, 0x5f2250
call fcn.00402160
call fcn.004692d0
push str.APPINI
mov ebx, 0x5f2ac0
mov dword [0x5f2388], eax
call fcn.00472e00
test eax, eax
jl 0x4cedb7
mov ecx, str.SAFEBUTTON
mov esi, ebx
call fcn.00472e70
mov ebx, eax
call fcn.00409830
mov edi, eax
call fcn.004098b0
mov ebx, dword [ebx]
push 0x595c28
push ebx
call fcn.005522fc
add esp, 8
test eax, eax
jne 0x4cedb7
push 6
push str.SAFE
mov ecx, 0x5f2810
call fcn.004121c0
cmp dword [0x5f2ae0], 0
jne 0x4cedf3
push 9
push str.BROWSER
mov ecx, 0x5f2810
call fcn.004121c0
push 9
push str.PLAYBAR
mov ecx, 0x5f2810
call fcn.004121c0
push 9
push str.LRCTIME
mov ecx, 0x5f2810
call fcn.004121c0
push 0x592720
push str.SEARCHBOX
push 0x5f2810
call fcn.0041cd10
call fcn.00419630
call fcn.0041b920
push str._skin_
lea edx, [esp + 0x2c]
push 0x5f2868
push edx
call fcn.00401ba0
add esp, 0xc
push 0x5f21ec
push eax
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0x394], 0x15
call fcn.00401ae0
add esp, 0xc
mov byte [esp + 0x388], 0x17
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cee6b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [esp + 0x3c]
mov ecx, 0x5f2dc8
call fcn.004e46b0
test eax, eax
jne 0x4cee9c
mov ecx, dword [0x5f21ec]
cmp dword [ecx - 0xc], eax
je 0x4cee92
mov ecx, 0x5f21ec
call fcn.00402160
mov ecx, 0x5f2dc8
call fcn.004e4320
push 8
call fcn.005308cb
add esp, 4
test eax, eax
je 0x4cf0c1
mov dword [eax], vtable.CImpIDispatch.0
mov dword [eax + 4], 0
jmp 0x4cf0c3
push str.HomeURL
mov ebx, 0x5f2b28
call fcn.00472e00
mov esi, eax
test esi, esi
mov dword [esp + 0x1c], esi
jge 0x4cef1f
mov esi, dword [0x5f2b34]
lea ecx, [esi + 1]
push 0x5f2b2c
mov dword [esp + 0x20], esi
call fcn.0041cff0
test esi, esi
jl 0x4ce7bd
cmp esi, dword [0x5f2b34]
jge 0x4ce7bd
lea eax, [esi + esi*2]
shl eax, 4
add eax, dword [0x5f2b30]
push 7
lea ecx, [eax + 4]
push str.HomeURL
call fcn.00402250
mov ebx, dword [0x5f2254]
cmp dword [ebx - 0xc], 0
je 0x4cefa3
test esi, esi
jl 0x4ce7bd
cmp esi, dword [0x5f2b34]
jge 0x4ce7bd
mov eax, dword [0x5f2b30]
lea ebp, [esi + esi*2]
shl ebp, 4
push 0
lea edi, [eax + ebp + 8]
call fcn.004aade0
test eax, eax
jge 0x4cefa3
cmp esi, dword [0x5f2b34]
jge 0x4ce7bd
mov ecx, dword [0x5f2b30]
mov eax, dword [ecx + ebp + 0x10]
lea ecx, [ecx + ebp + 8]
push 0x5f2254
push eax
call fcn.00539068
cmp esi, dword [0x5f2b34]
jge 0x4ce7bd
mov edx, dword [0x5f2b30]
mov eax, dword [edx + ebp + 0x24]
lea ecx, [edx + ebp + 0x1c]
push 0x5f2258
push eax
call fcn.00539068
push str.Home
mov ebx, 0x5f2ac0
call fcn.00472e00
mov ebp, eax
test ebp, ebp
jl 0x4ced5b
mov dword [esp + 0x18], 0
cmp ebp, dword [0x5f2acc]
jge 0x4ce7bd
mov ecx, dword [esp + 0x18]
lea eax, [ebp + ebp*2]
shl eax, 4
add eax, dword [0x5f2ac8]
cmp ecx, dword [eax + 0x10]
jge 0x4ced5b
mov eax, ebp
mov ecx, 0x5f2ac4
call fcn.0040ddc0
mov edi, dword [esp + 0x18]
mov ecx, eax
add ecx, 0x1c
mov eax, edi
call fcn.00439be0
mov esi, eax
call fcn.00472f10
mov eax, ebp
mov ecx, 0x5f2ac4
call fcn.0040ddc0
mov ecx, eax
add ecx, 8
mov eax, edi
call fcn.00439be0
mov ebx, dword [eax]
mov eax, dword [esp + 0x1c]
push 0
mov ecx, 0x5f2b2c
call fcn.0040ddc0
mov edi, eax
add edi, 8
call fcn.004aade0
test eax, eax
jge 0x4cf0b7
mov eax, ebp
mov ecx, 0x5f2ac4
call fcn.0040ddc0
mov ebx, dword [esp + 0x18]
mov ecx, eax
add ecx, 8
mov eax, ebx
call fcn.00439be0
mov edi, dword [esp + 0x1c]
mov esi, eax
mov eax, edi
mov ecx, 0x5f2b2c
call fcn.0040ddc0
mov edx, dword [eax + 0x10]
add eax, 8
push esi
push edx
mov ecx, eax
call fcn.00539068
mov eax, ebp
mov ecx, 0x5f2ac4
call fcn.0040ddc0
mov ecx, eax
add ecx, 0x1c
mov eax, ebx
call fcn.00439be0
mov esi, eax
mov eax, edi
mov ecx, 0x5f2b2c
call fcn.0040ddc0
mov ecx, dword [eax + 0x24]
add eax, 0x1c
push esi
push ecx
mov ecx, eax
call fcn.00539068
add dword [esp + 0x18], 1
jmp 0x4cefc4
xor eax, eax
mov esi, dword [esp + 0x40]
mov dword [esi + 0x100], eax
mov eax, 0x5f2458
call fcn.0045cac0
mov eax, 0x5f2458
call fcn.0045cc30
mov eax, 0x5f2458
call fcn.0045ce00
cmp dword [0x5f3210], 0
jne 0x4cf0f9
call fcn.0041b3d0
cmp dword [0x5f2268], 0
je 0x4cf254
cmp dword [esi + 0xa8], 0
jne 0x4cf254
mov ebp, 1
cmp dword [0x5f2348], ebp
jl 0x4cf259
push str.TangoBrowser
lea ecx, [esp + 0x20]
call fcn.00402390
lea edx, [esp + 0x1c]
push edx
mov byte [esp + 0x38c], 0x18
call fcn.004b8ab0
add esp, 4
test eax, eax
jne 0x4cf22a
lea eax, [esp + 0xf4]
push eax
call fcn.00424d90
mov bl, 0x19
lea ecx, [esp + 0xf4]
mov byte [esp + 0x388], bl
call fcn.0053bd19
cmp eax, ebp
jne 0x4cf1e0
call fcn.00462930
test eax, eax
je 0x4cf1bf
push 0
push 0x132
lea ecx, [esp + 0x84]
call fcn.0053b652
mov edi, vtable.CDlg360Warn.0
mov dword [esp + 0x7c], edi
lea ecx, [esp + 0x7c]
mov byte [esp + 0x388], 0x1a
call fcn.0053bd19
mov byte [esp + 0x388], bl
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], edi
call fcn.0053b5c7
mov ecx, dword [0x5f21f0]
mov edx, dword [0x5f2864]
push ecx
push edx
lea eax, [esp + 0x24]
push eax
call fcn.004b7970
add esp, 0xc
mov dword [0x5f2264], ebp
mov dword [esp + 0xf4], vtable.CDlgDefaultHint.0
mov byte [esp + 0x388], 0x1b
mov eax, dword [esp + 0x16c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cf216
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0xf4]
mov byte [esp + 0x388], 0x18
call fcn.0053b5c7
mov byte [esp + 0x388], 0x17
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cf259
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x4cf259
mov ebp, 1
push 0x9a40
call fcn.005308cb
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x388], 0x1c
je 0x4cf27e
push eax
call fcn.00474530
jmp 0x4cf280
xor eax, eax
mov byte [esp + 0x388], 0x17
mov dword [esi + 0x10c], eax
mov dword [esi + 0x20], eax
mov esi, SysReAllocStringLen
call fcn.0045f4d0
cmp dword [0x5f2ddc], 0
mov dword [0x5f2cfc], eax
je 0x4cf2b0
mov esi, 0xcf0000
jmp 0x4cf2ba
cmp eax, 6
jge 0x4cf2ba
mov esi, 0x80040000
mov edi, dword [esp + 0x40]
or esi, 0x20b0000
push esi
mov esi, dword [edi + 0x10c]
call fcn.004e7340
or edx, 0xffffffff
mov byte [esp + 0x388], 0xb
test eax, eax
mov eax, dword [esp + 0x3c]
jne 0x4cf31d
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cf2fc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x388], 0xa
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jmp 0x4cecdf
add eax, 0xfffffff0
mov dword [edi + 0xac], ebp
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cf33c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x388], 0xa
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cf364
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x58]
mov byte [esp + 0x388], 0
call fcn.00542d86
mov dword [esp + 0x388], 0xffffffff
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4cf3a0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, ebp
mov ecx, dword [esp + 0x380]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret