Function at 0x10007f60
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10029768
mov eax, dword fs:[0]
push eax
sub esp, 0x120
mov eax, dword [0x1003c0ac]
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 - 0x128], edi
xor eax, eax
mov dword [ebp - 0x18], 0
push str.VipUser
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.10008990
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 0
push eax
mov ecx, 0x1003d0f0
call fcn.10007a10
mov edx, dword [ebp - 0x14]
mov esi, eax
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x1000800f
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10008005
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000878b
push edx
push ecx
call fcn.10011b41
add esp, 8
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
test esi, esi
jne 0x10008071
push 4
call fcn.10011b11
mov esi, eax
add esp, 4
mov dword [ebp - 0x12c], esi
mov dword [ebp - 4], 1
test esi, esi
je 0x10008059
mov ecx, esi
mov dword [esi], 0
call fcn.10007640
mov dword [esi], vtable.CVipUser.0
jmp 0x1000805b
xor esi, esi
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x10008082
mov ecx, esi
call fcn.10007ac0
test esi, esi
je 0x10008082
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0xc]
call eax
test al, al
jne 0x1000876d
xor eax, eax
mov dword [ebp - 0xd8], 0
push str.ButflyImgmp.exe
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0xd4], 7
mov word [ebp - 0xe8], ax
call fcn.10008990
xor eax, eax
mov dword [ebp - 4], 2
push str.ButflyImgTp.exe
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 7
mov word [ebp - 0xd0], ax
call fcn.10008990
cmp dword [ebp - 0xd8], 0
mov byte [ebp - 4], 3
je 0x10008757
cmp dword [ebp - 0xc0], 0
je 0x10008757
call fcn.100087c0
mov ecx, eax
call fcn.10004b60
test al, al
jne 0x10008757
call fcn.100087c0
mov ecx, eax
call fcn.100047a0
test al, al
jne 0x10008757
push 0
call fcn.10019673
add esp, 4
mov esi, eax
push 1
push str.5ad10
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10003130
test eax, eax
jne 0x100081ee
call fcn.100087c0
mov ecx, eax
call fcn.10004b30
test al, al
jne 0x100081ee
push 0
push str.5d8aa
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10003130
mov edi, eax
cmp edi, 0x64
jg 0x100081e8
push 0
push str.baec8
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10003130
mov ecx, esi
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x708
jl 0x100081cc
lea eax, [edi + 1]
push eax
push str.5d8aa
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10005890
push esi
push str.baec8
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10005890
jmp 0x10008757
mov edi, dword [ebp - 0x128]
cmp byte [ebp + 8], 0
jne 0x10008239
push 0xffffffffffffffff
push str.328ad
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10003130
mov ecx, esi
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x708
jle 0x10008757
push esi
push str.328ad
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10005890
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
push eax
push str.26433
push str.MainSetting
mov byte [ebp - 4], 5
xor bl, bl
call fcn.100087c0
mov ecx, eax
call fcn.10003130
mov dword [ebp - 0x12c], eax
lea ecx, [ebp - 0x28]
test al, 1
jne 0x10008298
push str.ButflyImgmp.exe
mov bl, 1
call fcn.10008990
push 0x1002b800
jmp 0x100082a7
push str.ButflyImgTp.exe
call fcn.10008990
push 0x1002b808
lea ecx, [ebp - 0x58]
call fcn.10008990
call fcn.100087c0
mov ecx, eax
call fcn.10003060
push eax
lea ecx, [ebp - 0x118]
call fcn.10002580
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x118]
push eax
mov byte [ebp - 4], 6
call fcn.10002810
mov ecx, dword [ebp - 0x12c]
xor eax, eax
inc ecx
cmp ecx, 0x3e8
cmovl eax, ecx
push eax
push str.26433
push str.MainSetting
call fcn.100087c0
mov ecx, eax
call fcn.10005890
cmp dword [ebp - 0x18], 0
je 0x1000873c
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x70]
call fcn.100024f0
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 7
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.1000ae90
add esp, 4
test eax, eax
jne 0x10008734
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x40]
call fcn.100024f0
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 8
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x100083c1
cmp dword [edi], 0
lea ecx, [ebp - 0x58]
lea eax, [ebp - 0x40]
je 0x10008399
cmp dword [ebp - 0x44], 8
push 1
cmovae ecx, dword [ebp - 0x58]
cmp dword [ebp - 0x2c], 8
push ecx
cmovae eax, dword [ebp - 0x40]
push eax
call fcn.1000a6d0
add esp, 0xc
movzx eax, al
jmp 0x100083b9
cmp dword [ebp - 0x44], 8
push 0
cmovae ecx, dword [ebp - 0x58]
cmp dword [ebp - 0x2c], 8
push 0
cmovae eax, dword [ebp - 0x40]
push 0
push ecx
push eax
call fcn.1000a480
add esp, 0x14
test eax, eax
jne 0x1000872c
push str.396249715827484940254728544636270344534140441523
lea ecx, [ebp - 0xb8]
call fcn.10001290
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xb8]
test bl, bl
je 0x100083e6
push str.396249715827484940254728544636270344534140441523
jmp 0x100083eb
push str.772403685928490041264829554737284966524241451624
call fcn.10008850
cmp dword [ebp - 0xa4], 0x10
lea eax, [ebp - 0xb8]
cmovae eax, dword [ebp - 0xb8]
push eax
lea eax, [ebp - 0x100]
push eax
call fcn.10009580
add esp, 8
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
push 0x1002b878
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xb
call fcn.10001290
cmp dword [ebp - 0xec], 0x10
lea eax, [ebp - 0x100]
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xc
cmovae eax, dword [ebp - 0x100]
push eax
call fcn.10001290
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.1000c2b0
add esp, 0xc
lea ecx, [ebp - 0x88]
call fcn.10001430
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xb
call fcn.10001430
mov esi, dword [ebp - 0x124]
mov edi, dword [ebp - 0x120]
cmp esi, edi
je 0x10008650
nop dword [eax]
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x100084ca
mov eax, dword [esi]
push eax
lea ecx, [ebp - 0xa0]
call fcn.10001290
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.1000c5d0
add esp, 8
lea ecx, [ebp - 0x70]
push eax
call fcn.10002730
lea ecx, [ebp - 0x88]
call fcn.100026c0
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.1000ae90
add esp, 4
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa0]
call fcn.10001430
mov edi, dword [ebp - 0x120]
add esi, 0x18
cmp esi, edi
jne 0x100084c0
mov esi, dword [ebp - 0x124]
cmp esi, edi
je 0x10008650
mov ebx, dword [ebp - 0x128]
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x10008552
mov eax, dword [esi]
push eax
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
call fcn.10008850
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.1000c5d0
add esp, 8
lea ecx, [ebp - 0x70]
push eax
call fcn.10002730
lea ecx, [ebp - 0xa0]
call fcn.100026c0
call fcn.100087c0
mov ecx, eax
call fcn.10003060
push eax
lea ecx, [ebp - 0x40]
call fcn.10008990
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
push dword [ebp - 0x60]
cmovae eax, dword [ebp - 0x70]
lea ecx, [ebp - 0x40]
push eax
call fcn.10002810
cmp dword [ebx], 0
lea ecx, [ebp - 0x58]
lea eax, [ebp - 0x40]
je 0x100085f9
cmp dword [ebp - 0x44], 8
push 1
cmovae ecx, dword [ebp - 0x58]
cmp dword [ebp - 0x2c], 8
push ecx
cmovae eax, dword [ebp - 0x40]
push eax
call fcn.1000a6d0
add esp, 0xc
movzx eax, al
jmp 0x10008619
cmp dword [ebp - 0x44], 8
push 0
cmovae ecx, dword [ebp - 0x58]
cmp dword [ebp - 0x2c], 8
push 0
cmovae eax, dword [ebp - 0x40]
push 0
push ecx
push eax
call fcn.1000a480
add esp, 0x14
lea ecx, [ebp - 0x88]
test eax, eax
jne 0x1000863f
mov byte [ebp - 4], 0xb
call fcn.10001430
mov edi, dword [ebp - 0x120]
add esi, 0x18
cmp esi, edi
jne 0x10008548
jmp 0x1000864a
call fcn.10001430
mov edi, dword [ebp - 0x120]
mov esi, dword [ebp - 0x124]
test esi, esi
je 0x10008716
cmp esi, edi
je 0x100086b1
nop dword [eax]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10008693
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x10008689
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000878b
mov eax, edx
push ecx
push eax
call fcn.10011b41
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
add esi, 0x18
cmp esi, edi
jne 0x10008660
mov esi, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x11c]
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 0x100086ee
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10008790
push ecx
push esi
call fcn.10011b41
add esp, 8
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
lea ecx, [ebp - 0x100]
call fcn.10001430
lea ecx, [ebp - 0xb8]
call fcn.10001430
lea ecx, [ebp - 0x40]
call fcn.100026c0
lea ecx, [ebp - 0x70]
call fcn.100026c0
lea ecx, [ebp - 0x118]
call fcn.100026c0
lea ecx, [ebp - 0x58]
call fcn.100026c0
lea ecx, [ebp - 0x28]
call fcn.100026c0
lea ecx, [ebp - 0xd0]
call fcn.100026c0
lea ecx, [ebp - 0xe8]
call fcn.100026c0
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.10011b54
mov esp, ebp
pop ebp
ret 4
call fcn.10016079
call fcn.10016079
int3