Function at 0x10014c8
Capabilities:
Parse pe header

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
and dword [ebp - 4], 0
cmp dword [ebp + 0xc], 0
push ebx
push esi
push edi
push 4
pop esi
jne reloc.msvcrt.dll___set_app_type
mov edi, dword [ebp + 8]
mov ecx, 0x1001188
mov eax, edi
mov dx, word [eax]
or ebx, reloc.msvcrt.dll___set_app_type
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
jne reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
and dword [eax], 0
jmp reloc.msvcrt.dll___set_app_type
mov ecx, 0x1001174
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
jne reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], 2
jmp reloc.msvcrt.dll___set_app_type
mov ecx, 0x1001164
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
jne reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], 3
jmp reloc.msvcrt.dll___set_app_type
mov ecx, 0x1001154
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
jne reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], esi
jmp reloc.msvcrt.dll___set_app_type
mov ecx, 0x1001140
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
jne reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], 1
jmp reloc.msvcrt.dll___set_app_type
mov ecx, 0x1001130
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
jne reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], 5
jmp reloc.msvcrt.dll___set_app_type
mov ecx, 0x1001124
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
jne reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], 7
jmp reloc.msvcrt.dll___set_app_type
mov ecx, 0x1001110
mov eax, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne reloc.msvcrt.dll___set_app_type
test dx, dx
je reloc.msvcrt.dll___set_app_type
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add ecx, esi
test dx, dx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, ebx
test eax, eax
je reloc.msvcrt.dll___set_app_type
mov dword [ebp - 4], 0x80070667
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
leave
ret 0xc
mov eax, dword [ebp + 8]
mov edx, 0x1001110
mov cx, word [eax]
cmp cx, word [edx]
jne reloc.msvcrt.dll___set_app_type
test cx, cx
je reloc.msvcrt.dll___set_app_type
mov cx, word [eax + 2]
cmp cx, word [edx + 2]
jne reloc.msvcrt.dll___set_app_type
add eax, esi
add edx, esi
test cx, cx
jne reloc.msvcrt.dll___set_app_type
xor eax, eax
jmp reloc.msvcrt.dll___set_app_type
sbb eax, eax
sbb eax, reloc.msvcrt.dll___set_app_type
test eax, eax
jne reloc.msvcrt.dll___set_app_type
push 0x25
call dword [sym.imp.SHLWAPI.dll_IsOS]
test eax, eax
jne reloc.msvcrt.dll___set_app_type
push dword [ebp + 0xc]
call fcn.01002916
test al, al
je reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], 8
jmp reloc.msvcrt.dll___set_app_type
mov eax, dword [ebp + 0x10]
mov dword [eax], 9
jmp reloc.msvcrt.dll___set_app_type