Function at 0x100027d0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10181186
mov eax, dword fs:[0]
push eax
sub esp, 0x1e4
mov eax, dword [0x101fd178]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 4], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 4], 1
call fcn.10061de2
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 2
call fcn.100604ff
sub esp, 0x18
mov byte [ebp - 4], 3
mov ecx, esp
xor eax, eax
push eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101f0658
mov word [ecx], ax
call fcn.10003a60
push 0
push 1
push 0
lea ecx, [ebp - 0xf4]
call fcn.10060669
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x1ec]
call fcn.10061fbb
mov esi, eax
lea eax, [ebp - 0x28]
cmp eax, esi
je 0x100028fc
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x100028ca
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100028c0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002df9
push edx
push ecx
call fcn.1006e63c
add esp, 8
mov dword [ebp - 0x18], 0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x28], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x18], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x10002936
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000292c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002dfe
push edx
push ecx
call fcn.1006e63c
add esp, 8
cmp dword [ebp - 0x18], 0
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
jbe 0x10002958
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call edi
test eax, eax
jne 0x10002a3d
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0xf4]
call fcn.10060648
mov esi, eax
lea eax, [ebp - 0x28]
cmp eax, esi
je 0x100029dc
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x100029aa
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100029a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e03
push edx
push ecx
call fcn.1006e63c
add esp, 8
mov dword [ebp - 0x18], 0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x28], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x18], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x10002a16
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002a0c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e08
push edx
push ecx
call fcn.1006e63c
add esp, 8
push str.FastHoresPDFMicDTPDF
lea ecx, [ebp - 0x28]
call fcn.10003970
push 0x101f0654
lea ecx, [ebp - 0x28]
call fcn.10003970
push 0x101f0658
lea ecx, [ebp - 0x28]
call fcn.10003970
cmp dword [ebp - 0x18], 0
jbe 0x10002a59
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call edi
test eax, eax
jne 0x10002b4b
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0xf4]
call fcn.10060627
mov esi, eax
lea eax, [ebp - 0x28]
cmp eax, esi
je 0x10002add
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x10002aab
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002aa1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e0d
push edx
push ecx
call fcn.1006e63c
add esp, 8
mov dword [ebp - 0x18], 0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x28], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x18], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x10002b17
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002b0d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e12
push edx
push ecx
call fcn.1006e63c
add esp, 8
push 0x101f0654
lea ecx, [ebp - 0x28]
call fcn.10003970
push str.FastHoresPDFMacroPDF
lea ecx, [ebp - 0x28]
call fcn.10003970
push 0x101f0654
lea ecx, [ebp - 0x28]
call fcn.10003970
push 0x101f0658
lea ecx, [ebp - 0x28]
call fcn.10003970
cmp dword [ebp - 0x18], 0
jbe 0x10002d44
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call edi
test eax, eax
je 0x10002d44
lea eax, [ebp - 0x58]
push str.CMD_SERVER_RETAIN_SVCHOST
push eax
call fcn.1005c764
mov esi, eax
add esp, 8
lea eax, [ebp - 0x40]
cmp eax, esi
je 0x10002bf1
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x10002bbf
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002bb5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e17
push edx
push ecx
call fcn.1006e63c
add esp, 8
mov dword [ebp - 0x30], 0
xor eax, eax
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x40], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x30], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x10002c2b
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002c21
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e1c
push edx
push ecx
call fcn.1006e63c
add esp, 8
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.10063e5c
mov esi, eax
add esp, 8
lea eax, [ebp - 0x40]
cmp eax, esi
je 0x10002cb8
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x10002c86
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002c7c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e21
push edx
push ecx
call fcn.1006e63c
add esp, 8
mov dword [ebp - 0x30], 0
xor eax, eax
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x40], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x30], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x10002cf2
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002ce8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e26
push edx
push ecx
call fcn.1006e63c
add esp, 8
call fcn.10060337
cmp eax, 5
jl 0x10002d24
cmp dword [ebp - 0x2c], 8
lea edi, [ebp - 0x40]
lea esi, [ebp - 0x28]
cmovae edi, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 8
cmovae esi, dword [ebp - 0x28]
call fcn.10064250
push eax
push edi
push esi
call fcn.100640ab
add esp, 0xc
jmp 0x10002d44
cmp dword [ebp - 0x2c], 8
lea ecx, [ebp - 0x40]
lea eax, [ebp - 0x28]
cmovae ecx, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 8
push ecx
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.10063fa9
add esp, 8
lea ecx, [ebp - 0xf4]
call fcn.100605c9
lea ecx, [ebp - 0x1ec]
call fcn.10061e03
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x10002d94
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002d8a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e2b
push edx
push ecx
call fcn.1006e63c
add esp, 8
mov edx, dword [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
cmp edx, 8
jb 0x10002dde
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10002dd4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10002e30
push edx
push ecx
call fcn.1006e63c
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1006e62b
mov esp, ebp
pop ebp
ret
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
call fcn.1008a259
int3