Function at 0x100080f0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100278e8
mov eax, dword fs:[0]
push eax
sub esp, 0x138
mov eax, dword [0x1003a064]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x140], edi
push 7
xor eax, eax
mov dword [ebp - 0x48], 0
push str.VipUser
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
call fcn.10002740
lea eax, [ebp - 0x58]
mov dword [ebp - 4], 0
push eax
mov ecx, 0x1003ad14
call fcn.10007aa0
mov edx, dword [ebp - 0x44]
mov esi, eax
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x100081a1
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10008197
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000893e
push edx
push ecx
call fcn.1000fe4c
add esp, 8
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
test esi, esi
jne 0x10008203
push 4
call fcn.1000fe1c
mov esi, eax
add esp, 4
mov dword [ebp - 0x144], esi
mov dword [ebp - 4], 1
test esi, esi
je 0x100081eb
mov ecx, esi
mov dword [esi], 0
call fcn.100076d0
mov dword [esi], vtable.CVipUser.0
jmp 0x100081ed
xor esi, esi
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x10008214
mov ecx, esi
call fcn.10007b50
test esi, esi
je 0x10008214
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0xc]
call eax
test al, al
jne 0x10008920
push 0xc
xor eax, eax
mov dword [ebp - 0xd8], 0
push str.HaoKaMin.exe
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0xd4], 7
mov word [ebp - 0xe8], ax
call fcn.10002740
push 0xc
xor eax, eax
mov dword [ebp - 4], 2
push str.HaoKaMis.exe
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 7
mov word [ebp - 0xd0], ax
call fcn.10002740
cmp dword [ebp - 0xd8], 0
mov byte [ebp - 4], 3
je 0x1000890a
cmp dword [ebp - 0xc0], 0
je 0x1000890a
call fcn.10008970
mov ecx, eax
call fcn.10004e90
test al, al
jne 0x1000890a
call fcn.10008970
mov ecx, eax
call fcn.100047a0
test al, al
jne 0x1000890a
push 0
call fcn.100178d3
add esp, 4
mov esi, eax
push 1
push str.6f593
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10003140
test eax, eax
jne 0x10008384
call fcn.10008970
mov ecx, eax
call fcn.10004e60
test al, al
jne 0x10008384
push 0
push str.257e3
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10003140
mov edi, eax
cmp edi, 0x64
jg 0x1000837e
push 0
push str.86e94
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10003140
mov ecx, esi
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x708
jl 0x10008362
lea eax, [edi + 1]
push eax
push str.257e3
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10005c20
push esi
push str.86e94
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10005c20
jmp 0x1000890a
mov edi, dword [ebp - 0x140]
cmp byte [ebp + 8], 0
jne 0x100083cf
push 0xffffffffffffffff
push str.9eb00
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10003140
mov ecx, esi
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x708
jle 0x1000890a
push esi
push str.9eb00
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10005c20
xor eax, eax
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 7
mov word [ebp - 0x88], ax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
push eax
push str.3a563
push str.AppSetting
mov byte [ebp - 4], 5
xor bl, bl
call fcn.10008970
mov ecx, eax
call fcn.10003140
mov dword [ebp - 0x144], eax
lea ecx, [ebp - 0x88]
test al, 1
jne 0x10008434
push str.HaoKaMin.exe
mov bl, 1
call fcn.10008090
push 0x10029860
jmp 0x10008443
push str.HaoKaMis.exe
call fcn.10008090
push 0x10029868
lea ecx, [ebp - 0x40]
call fcn.10008090
call fcn.10008970
mov ecx, eax
call fcn.1000dcc0
push eax
lea ecx, [ebp - 0x118]
call fcn.10007f80
cmp dword [ebp - 0x74], 8
lea eax, [ebp - 0x88]
push dword [ebp - 0x78]
cmovae eax, dword [ebp - 0x88]
lea ecx, [ebp - 0x118]
push eax
mov byte [ebp - 4], 6
call fcn.100025c0
mov ecx, dword [ebp - 0x144]
xor eax, eax
inc ecx
cmp ecx, 0x3e8
cmovl eax, ecx
push eax
push str.3a563
push str.AppSetting
call fcn.10008970
mov ecx, eax
call fcn.10005c20
cmp dword [ebp - 0x78], 0
je 0x100088ec
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x70]
call fcn.100023c0
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 7
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.1000b930
add esp, 4
test eax, eax
jne 0x100088e4
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x28]
call fcn.100023c0
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 8
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x10008566
cmp dword [edi], 0
lea ecx, [ebp - 0x40]
lea eax, [ebp - 0x28]
je 0x1000853e
cmp dword [ebp - 0x2c], 8
push 1
cmovae ecx, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 8
push ecx
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b130
add esp, 0xc
movzx eax, al
jmp 0x1000855e
cmp dword [ebp - 0x2c], 8
push 0
cmovae ecx, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 8
push 0
cmovae eax, dword [ebp - 0x28]
push 0
push ecx
push eax
call fcn.1000aeb0
add esp, 0x14
test eax, eax
jne 0x100088dc
push 0x30
push str.006889575465634354346341524614416810480440582525
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
call fcn.10001520
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xa0]
push 0x30
test bl, bl
je 0x100085aa
push str.006889575465634354346341524614416810480440582525
jmp 0x100085af
push str.112102685564620055356242534724506926493141591515
call fcn.10001520
cmp dword [ebp - 0x8c], 0x10
lea eax, [ebp - 0xa0]
cmovae eax, dword [ebp - 0xa0]
push eax
lea eax, [ebp - 0x100]
push eax
call fcn.10009480
add esp, 8
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
push 1
push 0x100298d8
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
call fcn.10001520
cmp dword [ebp - 0xec], 0x10
lea eax, [ebp - 0x100]
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0xc
cmovae eax, dword [ebp - 0x100]
push eax
call fcn.10007f40
lea eax, [ebp - 0x13c]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0xb8]
push eax
call fcn.1000cdf0
add esp, 0xc
lea ecx, [ebp - 0xb8]
call fcn.10001230
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
call fcn.10001230
mov esi, dword [ebp - 0x13c]
mov edi, dword [ebp - 0x138]
cmp esi, edi
je 0x10008803
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x10008692
mov eax, dword [esi]
push eax
lea ecx, [ebp - 0xb8]
call fcn.10007f40
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.1000d440
add esp, 8
lea ecx, [ebp - 0x70]
push eax
call fcn.100024e0
lea ecx, [ebp - 0x58]
call fcn.10002470
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.1000b930
add esp, 4
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xb8]
call fcn.10001230
mov edi, dword [ebp - 0x138]
add esi, 0x18
cmp esi, edi
jne 0x10008688
mov esi, dword [ebp - 0x13c]
cmp esi, edi
je 0x10008803
mov ebx, dword [ebp - 0x140]
nop word [eax + eax]
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x1000871a
mov eax, dword [esi]
push eax
lea ecx, [ebp - 0xb8]
call fcn.10007f40
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x130]
push eax
call fcn.1000d440
add esp, 8
lea ecx, [ebp - 0x70]
push eax
call fcn.100024e0
lea ecx, [ebp - 0x130]
call fcn.10002470
call fcn.10008970
mov ecx, eax
call fcn.1000dcc0
push eax
lea ecx, [ebp - 0x28]
call fcn.10008090
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
push dword [ebp - 0x60]
cmovae eax, dword [ebp - 0x70]
lea ecx, [ebp - 0x28]
push eax
call fcn.100025c0
cmp dword [ebx], 0
lea ecx, [ebp - 0x40]
lea eax, [ebp - 0x28]
je 0x100087ac
cmp dword [ebp - 0x2c], 8
push 1
cmovae ecx, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 8
push ecx
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.1000b130
add esp, 0xc
movzx eax, al
jmp 0x100087cc
cmp dword [ebp - 0x2c], 8
push 0
cmovae ecx, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 8
push 0
cmovae eax, dword [ebp - 0x28]
push 0
push ecx
push eax
call fcn.1000aeb0
add esp, 0x14
lea ecx, [ebp - 0xb8]
test eax, eax
jne 0x100087f2
mov byte [ebp - 4], 0xb
call fcn.10001230
mov edi, dword [ebp - 0x138]
add esi, 0x18
cmp esi, edi
jne 0x10008710
jmp 0x100087fd
call fcn.10001230
mov edi, dword [ebp - 0x138]
mov esi, dword [ebp - 0x13c]
test esi, esi
je 0x100088c6
cmp esi, edi
je 0x10008861
nop
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10008843
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x10008839
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000893e
mov eax, edx
push ecx
push eax
call fcn.1000fe4c
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
add esi, 0x18
cmp esi, edi
jne 0x10008810
mov esi, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x134]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x1000889e
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10008943
push ecx
push esi
call fcn.1000fe4c
add esp, 8
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
lea ecx, [ebp - 0x100]
call fcn.10001230
lea ecx, [ebp - 0xa0]
call fcn.10001230
lea ecx, [ebp - 0x28]
call fcn.10002470
lea ecx, [ebp - 0x70]
call fcn.10002470
lea ecx, [ebp - 0x118]
call fcn.10002470
lea ecx, [ebp - 0x40]
call fcn.10002470
lea ecx, [ebp - 0x88]
call fcn.10002470
lea ecx, [ebp - 0xd0]
call fcn.10002470
lea ecx, [ebp - 0xe8]
call fcn.10002470
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1000fe5f
mov esp, ebp
pop ebp
ret 4
call fcn.100142d9
call fcn.100142d9
int3