Function at 0x46db20
Capabilities:
Check if file exists

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0x78
push 0xffffffffffffffff
push 0x4b29b8
mov eax, dword fs:[0]
push eax
sub esp, 0x68
mov eax, dword [0x4d0968]
xor eax, ebp
mov dword [ebp + 0x74], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 1
xor ebx, ebx
push 0x4b6be0
mov ecx, 0x4d23e8
mov dword [0x4d23e0], ebx
call fcn.0040bd70
push 0x2c
push str.http:__www.xunyou.com_flash_xunyou2009ad.swf
mov ecx, 0x4d2420
call fcn.0040bd70
push 0x2f
push str.http:__xyd.xunyou.com_index.php_Plat_soft_index
mov ecx, 0x4d244c
call fcn.0040bd70
push 0x26
push str.http:__xyd.xunyou.com_html_xunyou.html
mov ecx, 0x4d2468
call fcn.0040bd70
lea ecx, [ebp - 0x74]
call fcn.0047a2c0
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 4], ebx
call fcn.004717a0
push str.configxunyou.txt
push eax
lea ecx, [ebp + 0x58]
push ecx
mov byte [ebp - 4], 1
call fcn.00415930
add esp, 0x10
push eax
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 2
call fcn.0047b010
mov edi, 0x10
cmp dword [ebp + 0x70], edi
jb 0x46dbe9
mov edx, dword [ebp + 0x5c]
push edx
call fcn.004803bd
add esp, 4
cmp dword [ebp - 0x30], edi
mov esi, 0xf
mov dword [ebp + 0x70], esi
mov dword [ebp + 0x6c], ebx
mov byte [ebp + 0x5c], bl
mov byte [ebp - 4], bl
jb 0x46dc0b
mov eax, dword [ebp - 0x44]
push eax
call fcn.004803bd
add esp, 4
lea ecx, [ebp - 0x64]
call fcn.00451770
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ecx
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 3
call fcn.00479ab0
lea ecx, [ebp - 0x64]
call fcn.00474ef0
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push 0x4b674f
mov byte [ecx + 4], bl
call fcn.0040bd70
sub esp, 0x1c
mov ecx, esp
mov dword [ebp], esp
push 9
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.urlXunyou
mov byte [ebp - 4], 4
mov byte [ecx + 4], bl
call fcn.0040bd70
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2c], esp
push esi
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.XunYouModuleURL
mov byte [ebp - 4], 5
mov byte [ecx + 4], bl
call fcn.0040bd70
lea edx, [ebp + 0x3c]
push edx
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call fcn.00475130
cmp dword [ebp + 0x50], ebx
mov byte [ebp - 4], 6
je 0x46dcb7
push 0xffffffffffffffff
push ebx
lea eax, [ebp + 0x3c]
push eax
mov ecx, 0x4d2468
call fcn.0040bc90
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2c], esp
push ebx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push 0x4b674f
mov byte [ecx + 4], bl
call fcn.0040bd70
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push 0xd
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.urlLoginFlash
mov byte [ebp - 4], 7
mov byte [ecx + 4], bl
call fcn.0040bd70
sub esp, 0x1c
mov ecx, esp
mov dword [ebp], esp
push esi
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push str.XunYouModuleURL
mov byte [ebp - 4], 8
mov byte [ecx + 4], bl
call fcn.0040bd70
lea ecx, [ebp + 0x20]
push ecx
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 6
call fcn.00475130
cmp dword [ebp + 0x34], ebx
mov byte [ebp - 4], 9
je 0x46dd3e
push 0xffffffffffffffff
push ebx
lea edx, [ebp + 0x20]
push edx
mov ecx, 0x4d2420
call fcn.0040bc90
cmp dword [ebp + 0x38], edi
jb 0x46dd4f
mov eax, dword [ebp + 0x24]
push eax
call fcn.004803bd
add esp, 4
cmp dword [ebp + 0x54], edi
mov dword [ebp + 0x38], esi
mov dword [ebp + 0x34], ebx
mov byte [ebp + 0x24], bl
jb 0x46dd69
mov ecx, dword [ebp + 0x40]
push ecx
call fcn.004803bd
add esp, 4
lea ecx, [ebp - 0x64]
mov dword [ebp + 0x54], esi
mov dword [ebp + 0x50], ebx
mov byte [ebp + 0x40], bl
mov byte [ebp - 4], bl
call fcn.004517f0
lea ecx, [ebp - 0x74]
mov dword [ebp - 4], 0xffffffff
call fcn.0047a2d0
push 0x2e
push str.http:__xyd.xunyou.com_index.php_xyd_soft_index
mov ecx, 0x4d2484
call fcn.0040bd70
mov dword [0x4d24b0], 1
mov dword [ebp + 0x1c], esi
mov dword [ebp + 0x18], ebx
mov byte [ebp + 8], bl
lea edx, [ebp - 0x64]
push edx
mov dword [ebp - 4], 0xa
call fcn.004717a0
push str._ver
push eax
lea eax, [ebp + 0x58]
push eax
mov byte [ebp - 4], 0xb
call fcn.00415930
add esp, 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 4]
mov byte [ebp - 4], 0xc
call fcn.0040bc90
cmp dword [ebp + 0x70], edi
jb 0x46ddf7
mov ecx, dword [ebp + 0x5c]
push ecx
call fcn.004803bd
add esp, 4
cmp dword [ebp - 0x4c], edi
mov dword [ebp + 0x70], esi
mov dword [ebp + 0x6c], ebx
mov byte [ebp + 0x5c], bl
mov byte [ebp - 4], 0xa
jb 0x46de15
mov edx, dword [ebp - 0x60]
push edx
call fcn.004803bd
add esp, 4
lea eax, [ebp + 0x3c]
push eax
call fcn.004717a0
push str._ver
push eax
lea ecx, [ebp + 0x58]
push ecx
mov byte [ebp - 4], 0xd
call fcn.00415930
add esp, 0x10
cmp dword [eax + 0x18], edi
jb 0x46de41
mov eax, dword [eax + 4]
mov dword [ebp], eax
jmp 0x46de47
add eax, 4
mov dword [ebp], eax
cmp eax, ebx
jne 0x46de4f
xor edi, edi
jmp 0x46de9e
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
add edi, 1
cmp edi, 0x3fffffff
jg 0x46de9a
lea eax, [edi + edi]
call fcn.00480be0
mov esi, esp
cmp esi, ebx
je 0x46de95
mov edx, dword [ebp]
push edi
push esi
push 0xffffffffffffffff
push edx
push ebx
push 0x3a8
mov word [esi], bx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
neg eax
sbb eax, eax
and eax, esi
mov esi, 0xf
jmp 0x46de9c
mov esi, 0xf
xor eax, eax
mov edi, eax
cmp dword [ebp + 0x70], 0x10
jb 0x46deb0
mov eax, dword [ebp + 0x5c]
push eax
call fcn.004803bd
add esp, 4
cmp dword [ebp + 0x54], 0x10
mov dword [ebp + 0x70], esi
mov dword [ebp + 0x6c], ebx
mov byte [ebp + 0x5c], bl
mov byte [ebp - 4], 0xa
jb 0x46decf
mov ecx, dword [ebp + 0x40]
push ecx
call fcn.004803bd
add esp, 4
push edi
mov dword [ebp + 0x54], esi
mov dword [ebp + 0x50], ebx
mov byte [ebp + 0x40], bl
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, ebx
mov dword [0x4d23e0], eax
je 0x46e2ae
lea ecx, [ebp - 0x28]
call fcn.00470c10
push closesocket
push 3
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2c], esp
push 0xffffffffffffffff
push ebx
lea edx, [ebp + 4]
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push edx
mov byte [ebp - 4], 0xe
mov byte [ecx + 4], bl
call fcn.0040bc90
lea ecx, [ebp - 0x28]
call fcn.00471480
lea ecx, [ebp - 0x28]
call fcn.00470e80
add eax, 1
push eax
call fcn.0047edfd
mov esi, eax
add esp, 4
lea eax, [ebp]
push eax
lea ecx, [ebp - 0x28]
call fcn.00470e80
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00470ca0
mov ecx, dword [ebp]
lea edx, [ebp + 0x58]
push esi
push edx
mov byte [ecx + esi], bl
call fcn.0047d440
add esp, 8
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0xf
call fcn.0047a2c0
lea eax, [ebp + 0x58]
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x10
call fcn.0047ab40
push esi
call fcn.00480bca
add esp, 4
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 1
jb 0x46e26d
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 8
ja 0x46e26d
push ebx
lea ecx, [ebp - 0x20]
call fcn.00479470
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4d23e8
call fcn.0040bc90
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 1
jbe 0x46dff6
push 1
lea ecx, [ebp - 0x20]
call fcn.00479470
cmp dword [eax + 0x14], 3
jbe 0x46dff6
push 1
lea ecx, [ebp - 0x20]
call fcn.00479470
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4d2404
call fcn.0040bc90
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 2
jbe 0x46e02b
push 2
lea ecx, [ebp - 0x20]
call fcn.00479470
cmp dword [eax + 0x14], 0xa
jbe 0x46e02b
push 2
lea ecx, [ebp - 0x20]
call fcn.00479470
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4d2420
call fcn.0040bc90
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 3
jbe 0x46e0e5
push 3
lea ecx, [ebp - 0x20]
call fcn.00479470
cmp dword [eax + 0x14], 1
jbe 0x46e0e5
lea ecx, [ebp - 0x3c]
call fcn.0047a2c0
push 0x2c
push 3
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x11
call fcn.00479470
push eax
lea ecx, [ebp - 0x3c]
call fcn.0047acd0
lea ecx, [ebp - 0x3c]
xor esi, esi
call fcn.004794c0
test eax, eax
jbe 0x46e0d2
nop
push esi
lea ecx, [ebp - 0x3c]
call fcn.00479470
mov edi, 0x10
cmp dword [eax + 0x18], edi
jb 0x46e098
mov eax, dword [eax + 4]
jmp 0x46e09b
add eax, 4
push eax
call fcn.00481ce0
add esp, 4
lea ecx, [ebp - 0x10]
push ecx
mov ecx, 0x4d243c
mov dword [ebp - 0x10], eax
call fcn.00469710
lea ecx, [ebp - 0x3c]
add esi, 1
call fcn.004794c0
cmp esi, eax
jb 0x46e080
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x10
call fcn.0047a2d0
jmp 0x46e0ea
lea ecx, [ebp - 0x3c]
mov edi, 0x10
mov byte [ebp - 4], 0x10
call fcn.0047a2d0
jmp 0x46e0ea
mov edi, 0x10
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 4
jbe 0x46e125
push 4
lea ecx, [ebp - 0x20]
call fcn.00479470
mov esi, 5
cmp dword [eax + 0x14], esi
jbe 0x46e12a
push 4
lea ecx, [ebp - 0x20]
call fcn.00479470
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4d244c
call fcn.0040bc90
jmp 0x46e12a
mov esi, 5
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, esi
jbe 0x46e15b
push esi
lea ecx, [ebp - 0x20]
call fcn.00479470
cmp dword [eax + 0x14], esi
jbe 0x46e15b
push esi
lea ecx, [ebp - 0x20]
call fcn.00479470
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4d2468
call fcn.0040bc90
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 6
jbe 0x46e18f
push 6
lea ecx, [ebp - 0x20]
call fcn.00479470
cmp dword [eax + 0x14], esi
jbe 0x46e18f
push 6
lea ecx, [ebp - 0x20]
call fcn.00479470
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4d2484
call fcn.0040bc90
lea ecx, [ebp - 0x20]
call fcn.004794c0
cmp eax, 7
jbe 0x46e261
push 7
lea ecx, [ebp - 0x20]
call fcn.00479470
cmp dword [eax + 0x14], 2
jbe 0x46e261
lea ecx, [ebp - 0x3c]
call fcn.0047a2c0
push 0x2c
push 7
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x12
call fcn.00479470
push eax
lea ecx, [ebp - 0x3c]
call fcn.0047acd0
lea ecx, [ebp - 0x3c]
call fcn.004794c0
test eax, eax
jbe 0x46e205
push ebx
lea ecx, [ebp - 0x3c]
call fcn.00479470
cmp dword [eax + 0x18], edi
jb 0x46e1f4
mov eax, dword [eax + 4]
jmp 0x46e1f7
add eax, 4
push eax
call fcn.00481ce0
add esp, 4
mov dword [0x4d24b0], eax
lea ecx, [ebp - 0x3c]
mov esi, 1
call fcn.004794c0
cmp eax, esi
jbe 0x46e255
push esi
lea ecx, [ebp - 0x3c]
call fcn.00479470
cmp dword [eax + 0x18], edi
jb 0x46e229
mov eax, dword [eax + 4]
jmp 0x46e22c
add eax, 4
push eax
call fcn.00481ce0
add esp, 4
lea edx, [ebp - 0x10]
push edx
mov ecx, 0x4d24a0
mov dword [ebp - 0x10], eax
call fcn.00469710
lea ecx, [ebp - 0x3c]
add esi, 1
call fcn.004794c0
cmp esi, eax
jb 0x46e216
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x10
call fcn.0047a2d0
mov dword [0x4d23e0], 1
jmp 0x46e278
mov dword [0x4d23e0], ebx
mov edi, 0x10
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0xf
call fcn.0047a2d0
cmp dword [ebp + 0x70], edi
jb 0x46e295
mov eax, dword [ebp + 0x5c]
push eax
call fcn.004803bd
add esp, 4
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x70], 0xf
mov dword [ebp + 0x6c], ebx
mov byte [ebp + 0x5c], bl
mov byte [ebp - 4], 0xa
call fcn.00471290
cmp dword [0x4d1f64], ebx
je 0x46e2c8
push 0xffffffffffffffff
push ebx
push 0x4d1f50
mov ecx, 0x4d2404
call fcn.0040bc90
cmp dword [0x4d1f48], ebx
je 0x46e2e2
push 0xffffffffffffffff
push ebx
push 0x4d1f34
mov ecx, 0x4d2420
call fcn.0040bc90
cmp dword [0x4d1ff0], ebx
je 0x46e2fc
push 0xffffffffffffffff
push ebx
push 0x4d1fdc
mov ecx, 0x4d2468
call fcn.0040bc90
cmp dword [ebp + 0x1c], 0x10
jb 0x46e30e
mov ecx, dword [ebp + 8]
push ecx
call fcn.004803bd
add esp, 4
lea esp, [ebp - 0x84]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x74]
xor ecx, ebp
call fcn.00480bcf
add ebp, 0x78
mov esp, ebp
pop ebp
ret