Function at 0x100074c7
Capabilities:
Check os version
Get disk information

Disassembly:
mov eax, 0x100d57f6
call fcn.100ac440
sub esp, 0xb24
mov eax, dword [0x1011c710]
push ebx
push esi
xor eax, ebp
mov dword [ebp - 0xb08], ecx
push edi
lea ecx, [ebp - 0xadc]
mov dword [ebp - 0x10], eax
call fcn.100139a7
push 0x3e8
lea eax, [ebp - 0x564]
xor ebx, ebx
push eax
lea ecx, [ebp - 0xb04]
mov dword [ebp - 4], ebx
call fcn.1000749a
mov edi, dword [ebp - 0xb03]
lea eax, [ebp - 0x56c]
push eax
mov byte [ebp - 4], 1
mov dword [ebp - 0xaff], edi
mov byte [edi], bl
call fcn.10027f87
pop ecx
lea ecx, [ebp - 0x56c]
call fcn.1000729f
test al, al
jne 0x10007566
mov dword [ebp - 0xaff], edi
mov byte [edi], bl
xor edi, edi
xor eax, eax
mov al, byte [ebp + edi - 0x56c]
lea ecx, [ebp - 0xb04]
push eax
call fcn.100071c7
inc edi
cmp edi, 6
jb 0x10007549
jmp 0x100075ca
lea ecx, [ebp - 0x5c8]
call fcn.1007bb8b
lea ecx, [ebp - 0x5c8]
mov byte [ebp - 4], 2
call fcn.1007be43
test eax, eax
je 0x1000759e
mov eax, dword [ebp - 0x5a0]
cmp dword [eax - 0xc], ebx
jg 0x1000759e
lea ecx, [ebp - 0x5c8]
call fcn.1007bcb6
cmp eax, ebx
jne 0x10007584
xor esi, esi
xor eax, eax
mov al, byte [ebp + esi - 0x590]
lea ecx, [ebp - 0xb04]
push eax
call fcn.100071c7
inc esi
cmp esi, 6
jl 0x100075a0
lea ecx, [ebp - 0x5c8]
mov byte [ebp - 4], 1
call fcn.1007bc1b
push 0x40
pop ecx
xor eax, eax
mov byte [ebp - 0x17c], bl
lea edi, [ebp - 0x17b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x17c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsA]
push 0x400
lea eax, [ebp - 0x17c]
push eax
lea ecx, [ebp - 0xb30]
call fcn.1000749a
mov byte [ebp - 4], 3
mov byte [ebp - 0xae4], bl
mov byte [ebp - 0xade], bl
jmp 0x10007627
push edi
call dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
cmp eax, 3
je 0x1000763a
lea ecx, [ebp - 0xb30]
call fcn.10007267
mov edi, eax
cmp byte [edi], bl
jne 0x1000761b
jmp 0x10007649
mov al, byte [edi]
mov byte [ebp - 0xae4], al
mov byte [ebp - 0xade], 1
call fcn.100c6d12
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
lea esi, [eax + 0x10]
mov dword [ebp - 0xae8], esi
cmp byte [ebp - 0xade], bl
mov byte [ebp - 4], 4
mov byte [ebp - 0xadd], bl
je 0x10007715
push 1
push dword [ebp - 0xae4]
lea ecx, [ebp - 0xae4]
call fcn.1000741c
push 0x100e33f8
lea ecx, [ebp - 0xae4]
mov byte [ebp - 4], 5
call fcn.10007475
push 0xc
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xb14]
push eax
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xb0c]
push eax
push 0x18
lea eax, [ebp - 0x584]
push eax
push dword [ebp - 0xae4]
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
test eax, eax
je 0x10007703
mov eax, dword [ebp - 0xb0c]
mov ecx, eax
and ecx, 0xffff
push ecx
shr eax, 0x10
push eax
lea eax, [ebp - 0xae8]
push str._04X__04X
push eax
call fcn.10001d75
mov esi, dword [ebp - 0xae8]
add esp, 0x10
mov byte [ebp - 0xadd], 1
mov ecx, dword [ebp - 0xae4]
add ecx, 0xfffffff0
mov byte [ebp - 4], 4
call fcn.10001199
mov edi, 0x94
push edi
lea eax, [ebp - 0x65c]
push ebx
push eax
call fcn.100ab720
add esp, 0xc
lea eax, [ebp - 0x65c]
push eax
mov dword [ebp - 0x65c], edi
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp eax, ebx
je 0x10007754
cmp dword [ebp - 0x658], 6
jne 0x100077b5
cmp dword [ebp - 0x654], 1
jb 0x100077b5
cmp byte [ebp - 0xadd], bl
je 0x100077b5
cmp dword [esi - 0xc], ebx
je 0x100077b5
push 9
mov byte [ebp - 0x6c], bl
xor eax, eax
pop ecx
lea edi, [ebp - 0x6b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x768]
stosb byte es:[edi], al
call fcn.100139a7
lea eax, [ebp - 0x6c]
push eax
push esi
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 6
call fcn.10013b50
push 0xa
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0xb04]
call fcn.10007234
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 4
call fcn.100139b7
jmp 0x10007922
lea ecx, [ebp - 0x9d0]
call fcn.1001d743
lea ecx, [ebp - 0x9d0]
mov byte [ebp - 4], 7
call fcn.1001dc6f
test eax, eax
je 0x100078e6
lea ecx, [ebp - 0x9d0]
call fcn.1001d73c
push eax
call fcn.100ab7d0
pop ecx
lea ecx, [ebp - 0x9d0]
call fcn.1001d73c
push eax
lea ecx, [ebp - 0x588]
call fcn.10002218
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x588]
mov byte [ebp - 4], 8
call fcn.10004560
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x588]
mov byte [ebp - 4], 9
call fcn.10001f03
push ebx
push 1
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 8
call fcn.100017d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x588]
call fcn.10004520
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x588]
mov byte [ebp - 4], 0xa
call fcn.10001f03
push ebx
push 1
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 8
call fcn.100017d0
push 9
mov byte [ebp - 0x5b4], bl
xor eax, eax
pop ecx
lea edi, [ebp - 0x5b3]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x768]
stosb byte es:[edi], al
call fcn.100139a7
cmp dword [ebp - 0x570], 0x10
mov eax, dword [ebp - 0x584]
mov byte [ebp - 4], 0xb
jae 0x100078a0
lea eax, [ebp - 0x584]
lea ecx, [ebp - 0x5b4]
push ecx
push eax
lea ecx, [ebp - 0x768]
call fcn.10013b50
push 0xa
lea eax, [ebp - 0x5b4]
push eax
lea ecx, [ebp - 0xb04]
call fcn.10007234
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 8
call fcn.100139b7
push ebx
push 1
lea ecx, [ebp - 0x588]
call fcn.100017d0
jmp 0x10007913
push 0x23
lea ecx, [ebp - 0xb04]
call fcn.100071ea
push 0xf356
lea ecx, [ebp - 0xb04]
call fcn.10007210
push 0xec01
lea ecx, [ebp - 0xb04]
call fcn.10007210
lea ecx, [ebp - 0x9d0]
mov byte [ebp - 4], 4
call fcn.1001d77c
push 0x10
lea eax, [ebp - 0x564]
push 0x10
push eax
call fcn.10013c64
add esp, 0xc
push eax
lea ecx, [ebp - 0xb04]
call fcn.100071ea
push 0x32
lea eax, [ebp - 0x44]
push ebx
push eax
call fcn.100ab720
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x564]
push 0x12
push eax
call fcn.100137a3
mov al, byte [ebp - 0x42]
mov esi, dword [ebp - 0xb08]
mov byte [ebp - 0x27], al
mov al, byte [ebp - 0x3b]
mov byte [ebp - 0x26], al
mov al, byte [ebp - 0x33]
mov byte [ebp - 0x25], al
add esp, 0x18
lea eax, [ebp - 0x44]
add esi, 4
push eax
mov ecx, esi
call fcn.10001f92
mov esi, dword [esi]
push str.psnetwork.ini
push esi
push str.clientid
push str.Network
call fcn.10002987
lea eax, [ebp - 0x44]
push eax
mov esi, str.pps_client_id
push esi
push str.http:__ppstream.com
call fcn.10089b05
lea eax, [ebp - 0x44]
push eax
push esi
push str.http:__pps.tv
call fcn.10089b05
lea eax, [ebp - 0x44]
push eax
push esi
push 0x100e3380
call fcn.10089b05
mov ecx, dword [ebp - 0xae8]
add esp, 0x24
add ecx, 0xfffffff0
call fcn.10001199
lea ecx, [ebp - 0xb23]
call fcn.10059a78
lea ecx, [ebp - 0xaf7]
call fcn.10059a78
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xadc]
call fcn.100139b7
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop esi
xor ecx, ebp
pop ebx
call fcn.100ac33f
leave
ret