Function at 0x1008ad30
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x100f5557
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
mov al, byte [esp + 0x28]
push ebx
push ebp
mov ebp, ecx
xor ebx, ebx
push esi
mov dword [ebp], ebx
mov dword [ebp + 4], ebx
mov dword [ebp + 8], ebx
mov dword [ebp + 0xc], ebx
mov dword [esp + 0xc], ebp
mov byte [ebp + 0x10], al
mov dword [ebp + 0x14], ebx
mov dword [ebp + 0x18], ebx
mov dword [ebp + 0x1c], ebx
mov cl, byte [esp + 0x34]
mov dword [esp + 0x28], ebx
mov byte [ebp + 0x20], cl
mov dword [ebp + 0x24], ebx
mov dword [ebp + 0x28], ebx
mov dword [ebp + 0x2c], ebx
mov dl, byte [esp + 0x34]
mov dword [ebp + 0x34], ebx
mov byte [ebp + 0x30], dl
mov dword [ebp + 0x38], ebx
mov dword [ebp + 0x3c], ebx
mov al, byte [esp + 0x34]
mov dword [ebp + 0x44], ebx
mov byte [ebp + 0x40], al
mov dword [ebp + 0x48], ebx
mov dword [ebp + 0x4c], ebx
mov cl, byte [esp + 0x34]
mov dword [ebp + 0x54], ebx
mov byte [ebp + 0x50], cl
mov dword [ebp + 0x58], ebx
mov dword [ebp + 0x5c], ebx
fld dword [0x100f73d8]
fsub dword [esp + 0x34]
mov edx, dword [esp + 0x30]
mov dword [ebp + 0x60], ebx
mov dword [ebp + 0x64], ebx
mov byte [ebp + 0x68], 1
mov byte [esp + 0x28], 4
fstp dword [0x1011db20]
mov eax, dword [edx + 4]
cmp eax, ebx
jne 0x1008ade2
mov eax, 0x100f7364
push 0x1010d034
push eax
call fcn.100dfee0
mov esi, eax
add esp, 8
cmp esi, ebx
mov dword [esp + 0x34], esi
je 0x1008af80
push esi
push 1
push 0x90
push 0x1011db28
call fcn.100dfd98
mov eax, dword [0x1011db28]
add esp, 0x10
cmp eax, 0x50534249
jne 0x1008af77
cmp dword [0x1011db2c], 0x2e
jne 0x1008af77
mov al, byte [esp + 0x34]
push edi
mov byte [esp + 0x14], al
mov edi, str.Header_OK
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov esi, ecx
lea ecx, [esp + 0x18]
push esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x3c], esi
call fcn.1000234e
test al, al
je 0x1008ae8f
mov edi, dword [esp + 0x18]
mov ecx, esi
mov edx, ecx
mov esi, str.Header_OK
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov eax, edx
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18]
call fcn.100044f0
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x1008aeb4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x1008aeab
cmp al, 0xff
je 0x1008aeab
dec al
mov byte [ecx], al
jmp 0x1008aeb4
push ecx
call fcn.100d02fa
add esp, 4
mov esi, 0x1011db30
mov eax, dword [esi]
cmp eax, ebx
je 0x1008aeed
cmp dword [esi + 4], ebx
je 0x1008aeed
mov edi, dword [esp + 0x38]
push ebx
push eax
push edi
call fcn.100de7f5
mov ecx, dword [esi + 4]
push ecx
call fcn.100ddb85
mov dword [esi], eax
mov edx, dword [esi + 4]
push edi
push 1
push edx
push eax
call fcn.100dfd98
add esp, 0x20
jmp 0x1008aeef
mov dword [esi], ebx
add esi, 8
cmp esi, 0x1011dbb8
jl 0x1008aeb9
push ebx
mov ecx, ebp
call fcn.1008aae0
mov ecx, ebp
mov dword [ebp], eax
call fcn.10089410
mov ecx, ebp
call fcn.10088b40
mov ecx, ebp
call fcn.10088f50
mov ecx, ebp
call fcn.10089640
mov ecx, ebp
call fcn.10089230
mov esi, 0x1011db30
pop edi
mov eax, dword [esi]
push eax
call fcn.100d02fa
add esi, 8
add esp, 4
cmp esi, 0x1011dbb8
jl 0x1008af2e
mov ecx, dword [esp + 0x34]
push ecx
call fcn.100de51a
add esp, 4
mov ecx, ebp
mov byte [ebp + 0x68], bl
push 1
call fcn.1008bc20
mov eax, dword [0x1011dcdc]
lea edx, [esp + 0x34]
push eax
mov ecx, dword [eax]
push ecx
push edx
mov ecx, 0x1011dcd8
call fcn.1008c840
jmp 0x1008af80
push esi
call fcn.100de51a
add esp, 4
mov ecx, dword [esp + 0x20]
mov eax, ebp
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x20
ret 8