Function at 0x45d350
Capabilities:
Check if file exists
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x49d07f
mov eax, dword fs:[0]
push eax
sub esp, 0xe0
mov eax, dword [0x4b7480]
xor eax, esp
mov dword [esp + 0xdc], eax
push ebx
push ebp
push esi
mov eax, dword [0x4b7480]
xor eax, esp
push eax
lea eax, [esp + 0xf0]
mov dword fs:[0], eax
push 1
xor ebx, ebx
push 0x4a0ec4
mov ecx, 0x4b8ee8
mov dword [0x4b8ee0], ebx
call fcn.0040ae30
push 0x2c
push str.http:__www.xunyou.com_flash_xunyou2009ad.swf
mov ecx, 0x4b8f20
call fcn.0040ae30
push 0x2f
push str.http:__xyd.xunyou.com_index.php_Plat_soft_index
mov ecx, 0x4b8f4c
call fcn.0040ae30
push 0x26
push str.http:__xyd.xunyou.com_html_xunyou.html
mov ecx, 0x4b8f68
call fcn.0040ae30
lea ecx, [esp + 0x6c]
call fcn.00469070
lea eax, [esp + 0x34]
push eax
mov dword [esp + 0xfc], ebx
call fcn.00460a40
push str.configxunyou.txt
push eax
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0x108], 1
call fcn.0040b170
add esp, 0x10
push eax
lea ecx, [esp + 0x70]
mov byte [esp + 0xfc], 2
call fcn.00469dc0
mov esi, 0x10
cmp dword [esp + 0x94], esi
jb 0x45d43e
mov edx, dword [esp + 0x80]
push edx
call fcn.0046e29f
add esp, 4
cmp dword [esp + 0x4c], esi
mov ebp, 0xf
mov dword [esp + 0x94], ebp
mov dword [esp + 0x90], ebx
mov byte [esp + 0x80], bl
mov byte [esp + 0xf8], bl
jb 0x45d472
mov eax, dword [esp + 0x38]
push eax
call fcn.0046e29f
add esp, 4
lea ecx, [esp + 0x50]
call fcn.0043c5d0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
push ecx
lea ecx, [esp + 0x8c]
mov byte [esp + 0x118], 3
call fcn.00468860
lea ecx, [esp + 0x6c]
call fcn.00463c30
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
push ebx
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push 0x49fdff
mov byte [ecx + 4], bl
call fcn.0040ae30
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x5c], esp
push 9
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.urlXunyou
mov byte [esp + 0x138], 4
mov byte [ecx + 4], bl
call fcn.0040ae30
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x7c], esp
push ebp
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.XunYouModuleURL
mov byte [esp + 0x154], 5
mov byte [ecx + 4], bl
call fcn.0040ae30
lea edx, [esp + 0xec]
push edx
lea ecx, [esp + 0xa8]
mov byte [esp + 0x150], 3
call fcn.00463e70
cmp dword [esp + 0xac], ebx
mov byte [esp + 0xf8], 6
je 0x45d54c
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0xa0]
push eax
mov ecx, 0x4b8f68
call fcn.0040a6b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push ebx
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push 0x49fdff
mov byte [ecx + 4], bl
call fcn.0040ae30
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push 0xd
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.urlLoginFlash
mov byte [esp + 0x138], 7
mov byte [ecx + 4], bl
call fcn.0040ae30
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x78], esp
push ebp
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push str.XunYouModuleURL
mov byte [esp + 0x154], 8
mov byte [ecx + 4], bl
call fcn.0040ae30
lea ecx, [esp + 0x108]
push ecx
lea ecx, [esp + 0xa8]
mov byte [esp + 0x150], 6
call fcn.00463e70
cmp dword [esp + 0xc8], ebx
mov byte [esp + 0xf8], 9
je 0x45d5f6
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0xbc]
push edx
mov ecx, 0x4b8f20
call fcn.0040a6b0
cmp dword [esp + 0xcc], esi
jb 0x45d60f
mov eax, dword [esp + 0xb8]
push eax
call fcn.0046e29f
add esp, 4
cmp dword [esp + 0xb0], esi
mov dword [esp + 0xcc], ebp
mov dword [esp + 0xc8], ebx
mov byte [esp + 0xb8], bl
jb 0x45d63d
mov ecx, dword [esp + 0x9c]
push ecx
call fcn.0046e29f
add esp, 4
lea ecx, [esp + 0x50]
mov dword [esp + 0xb0], ebp
mov dword [esp + 0xac], ebx
mov byte [esp + 0x9c], bl
mov byte [esp + 0xf8], bl
call fcn.0043c650
lea ecx, [esp + 0x6c]
mov dword [esp + 0xf8], 0xffffffff
call fcn.00469080
push 0x2e
push str.http:__xyd.xunyou.com_index.php_xyd_soft_index
mov ecx, 0x4b8f84
call fcn.0040ae30
mov dword [0x4b8fb0], 1
mov dword [esp + 0xe8], ebp
mov dword [esp + 0xe4], ebx
mov byte [esp + 0xd4], bl
lea edx, [esp + 0x50]
push edx
mov dword [esp + 0xfc], 0xa
call fcn.00460a40
push str._ver
push eax
lea eax, [esp + 0x88]
push eax
mov byte [esp + 0x108], 0xb
call fcn.0040b170
add esp, 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xdc]
mov byte [esp + 0x104], 0xc
call fcn.0040a6b0
cmp dword [esp + 0x94], esi
jb 0x45d70a
mov ecx, dword [esp + 0x80]
push ecx
call fcn.0046e29f
add esp, 4
cmp dword [esp + 0x68], esi
mov dword [esp + 0x94], ebp
mov dword [esp + 0x90], ebx
mov byte [esp + 0x80], bl
mov byte [esp + 0xf8], 0xa
jb 0x45d73a
mov edx, dword [esp + 0x54]
push edx
call fcn.0046e29f
add esp, 4
lea eax, [esp + 0x50]
push eax
call fcn.00460a40
push str._ver
push eax
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0x108], 0xd
call fcn.0040b170
add esp, 0x10
cmp dword [eax + 0x18], esi
jb 0x45d76c
mov eax, dword [eax + 4]
jmp 0x45d76f
add eax, 4
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
cmp dword [esp + 0x94], esi
mov dword [0x4b8ee0], eax
jb 0x45d794
mov edx, dword [esp + 0x80]
push edx
call fcn.0046e29f
add esp, 4
cmp dword [esp + 0x68], esi
mov dword [esp + 0x94], ebp
mov dword [esp + 0x90], ebx
mov byte [esp + 0x80], bl
mov byte [esp + 0xf8], 0xa
jb 0x45d7c4
mov eax, dword [esp + 0x54]
push eax
call fcn.0046e29f
add esp, 4
cmp dword [0x4b8ee0], ebx
je 0x45dbed
lea ecx, [esp + 0x2c]
call fcn.00460070
push SysReAllocStringLen
push 3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0xfc]
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push edx
mov byte [esp + 0x128], 0xe
mov byte [ecx + 4], bl
call fcn.0040a6b0
lea ecx, [esp + 0x50]
call fcn.00460760
lea ecx, [esp + 0x2c]
call fcn.00460270
add eax, 1
push eax
call fcn.0046de45
mov esi, eax
add esp, 4
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x30]
call fcn.00460270
push eax
push esi
lea ecx, [esp + 0x38]
call fcn.00460100
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x7c]
push esi
push edx
mov byte [ecx + esi], bl
call fcn.0046c470
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0xf8], 0xf
call fcn.00469070
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xfc], 0x10
call fcn.004698f0
push esi
call fcn.0046ecb5
add esp, 4
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 1
jb 0x45db91
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 8
ja 0x45db91
push 0xffffffffffffffff
push ebx
push 0x4b8eac
mov ecx, 0x4b8ee8
call fcn.0040a6b0
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 1
jbe 0x45d8f6
push 1
lea ecx, [esp + 0x18]
call fcn.00468220
cmp dword [eax + 0x14], 3
jbe 0x45d8f6
push 1
lea ecx, [esp + 0x18]
call fcn.00468220
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4b8f04
call fcn.0040a6b0
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 2
jbe 0x45d92e
push 2
lea ecx, [esp + 0x18]
call fcn.00468220
cmp dword [eax + 0x14], 0xa
jbe 0x45d92e
push 2
lea ecx, [esp + 0x18]
call fcn.00468220
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4b8f20
call fcn.0040a6b0
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 3
jbe 0x45d9e5
push 3
lea ecx, [esp + 0x18]
call fcn.00468220
cmp dword [eax + 0x14], 1
jbe 0x45d9e5
lea ecx, [esp + 0x34]
call fcn.00469070
push 0x2c
push 3
lea ecx, [esp + 0x1c]
mov byte [esp + 0x100], 0x11
call fcn.00468220
push eax
lea ecx, [esp + 0x3c]
call fcn.00469a80
lea ecx, [esp + 0x34]
xor esi, esi
call fcn.00468270
test eax, eax
jbe 0x45d9d4
lea esp, [esp]
push esi
lea ecx, [esp + 0x38]
call fcn.00468220
cmp dword [eax + 0x18], 0x10
jb 0x45d9a5
mov eax, dword [eax + 4]
jmp 0x45d9a8
add eax, 4
push eax
call fcn.0046fecf
add esp, 4
lea ecx, [esp + 0x10]
push ecx
mov ecx, 0x4b8f3c
mov dword [esp + 0x14], eax
call fcn.0045b130
lea ecx, [esp + 0x34]
add esi, 1
call fcn.00468270
cmp esi, eax
jb 0x45d990
lea ecx, [esp + 0x34]
mov byte [esp + 0xf8], 0x10
call fcn.00469080
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 4
jbe 0x45da23
push 4
lea ecx, [esp + 0x18]
call fcn.00468220
mov esi, 5
cmp dword [eax + 0x14], esi
jbe 0x45da28
push 4
lea ecx, [esp + 0x18]
call fcn.00468220
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4b8f4c
call fcn.0040a6b0
jmp 0x45da28
mov esi, 5
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, esi
jbe 0x45da5c
push esi
lea ecx, [esp + 0x18]
call fcn.00468220
cmp dword [eax + 0x14], esi
jbe 0x45da5c
push esi
lea ecx, [esp + 0x18]
call fcn.00468220
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4b8f68
call fcn.0040a6b0
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 6
jbe 0x45da93
push 6
lea ecx, [esp + 0x18]
call fcn.00468220
cmp dword [eax + 0x14], esi
jbe 0x45da93
push 6
lea ecx, [esp + 0x18]
call fcn.00468220
push 0xffffffffffffffff
push ebx
push eax
mov ecx, 0x4b8f84
call fcn.0040a6b0
lea ecx, [esp + 0x14]
call fcn.00468270
cmp eax, 7
jbe 0x45db85
push 7
lea ecx, [esp + 0x18]
call fcn.00468220
cmp dword [eax + 0x14], 2
jbe 0x45db85
lea ecx, [esp + 0x34]
call fcn.00469070
push 0x2c
push 7
lea ecx, [esp + 0x1c]
mov byte [esp + 0x100], 0x12
call fcn.00468220
push eax
lea ecx, [esp + 0x3c]
call fcn.00469a80
lea ecx, [esp + 0x34]
call fcn.00468270
test eax, eax
jbe 0x45db15
push ebx
lea ecx, [esp + 0x38]
call fcn.00468220
cmp dword [eax + 0x18], 0x10
jb 0x45db04
mov eax, dword [eax + 4]
jmp 0x45db07
add eax, 4
push eax
call fcn.0046fecf
add esp, 4
mov dword [0x4b8fb0], eax
lea ecx, [esp + 0x34]
mov esi, 1
call fcn.00468270
cmp eax, esi
jbe 0x45db74
jmp 0x45db30
push esi
lea ecx, [esp + 0x38]
call fcn.00468220
cmp dword [eax + 0x18], 0x10
jb 0x45db45
mov eax, dword [eax + 4]
jmp 0x45db48
add eax, 4
push eax
call fcn.0046fecf
add esp, 4
lea edx, [esp + 0x10]
push edx
mov ecx, 0x4b8fa0
mov dword [esp + 0x14], eax
call fcn.0045b130
lea ecx, [esp + 0x34]
add esi, 1
call fcn.00468270
cmp esi, eax
jb 0x45db30
lea ecx, [esp + 0x34]
mov byte [esp + 0xf8], 0x10
call fcn.00469080
mov dword [0x4b8ee0], 1
jmp 0x45db97
mov dword [0x4b8ee0], ebx
lea ecx, [esp + 0x14]
mov byte [esp + 0xf8], 0xf
call fcn.00469080
cmp dword [esp + 0x94], 0x10
jb 0x45dbc2
mov eax, dword [esp + 0x80]
push eax
call fcn.0046e29f
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x94], ebp
mov dword [esp + 0x90], ebx
mov byte [esp + 0x80], bl
mov byte [esp + 0xf8], 0xa
call fcn.004605c0
mov esi, 0x10
cmp dword [0x4b8a6c], ebx
je 0x45dc07
push 0xffffffffffffffff
push ebx
push 0x4b8a58
mov ecx, 0x4b8f04
call fcn.0040a6b0
cmp dword [0x4b8a50], ebx
je 0x45dc21
push 0xffffffffffffffff
push ebx
push 0x4b8a3c
mov ecx, 0x4b8f20
call fcn.0040a6b0
cmp dword [0x4b8af8], ebx
je 0x45dc3b
push 0xffffffffffffffff
push ebx
push 0x4b8ae4
mov ecx, 0x4b8f68
call fcn.0040a6b0
cmp dword [esp + 0xe8], esi
jb 0x45dc54
mov ecx, dword [esp + 0xd4]
push ecx
call fcn.0046e29f
add esp, 4
mov ecx, dword [esp + 0xf0]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xdc]
xor ecx, esp
call fcn.0046f564
add esp, 0xec
ret