Function at 0x4874e4
Capabilities:
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 8], edx
mov esi, eax
xor eax, eax
push ebp
push 0x4878f3
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x10
call fcn.004874a4
mov dword [ebp - 4], eax
mov dl, 2
mov eax, esi
call fcn.0040d578
mov edi, eax
mov ebx, edi
push 1
push 0
mov eax, ebx
mov cl, 1
mov dl, 1
call fcn.004102b0
mov eax, 0x18
call fcn.004874cc
push eax
mov eax, ebx
call fcn.0040f090
mov edx, 4
pop ecx
call fcn.0040c088
mov eax, esi
call fcn.0040f198
push eax
mov eax, 2
call fcn.004874a4
pop edx
sub edx, eax
mov eax, ebx
call fcn.0040eb18
mov eax, 0x32
call fcn.004874b8
mov edx, eax
mov eax, ebx
call fcn.0040eb5c
mov eax, ebx
mov edx, 0xffffff
call fcn.0040eb88
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x491ad0
mov eax, ebx
mov edx, 3
call fcn.0040e414
mov dl, 2
mov eax, edi
call fcn.0040d578
mov ebx, eax
push 0
push 0
mov cl, 1
mov dl, 1
mov eax, ebx
call fcn.004102b0
mov edx, 0xffffff
mov eax, ebx
call fcn.0040eb88
mov eax, 8
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040ea7c
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x491ad0
mov edx, 3
mov eax, ebx
call fcn.0040e414
push 0
push 0xffffffffffffffff
mov eax, dword [ebx + 0x30]
xor edx, edx
call fcn.0040ec44
mov ecx, eax
mov edx, dword [0x486c14]
xor eax, eax
call fcn.00488b98
mov esi, eax
mov dword [ebx + 0xee], esi
mov eax, esi
xor ecx, ecx
mov edx, 2
call fcn.00488c10
mov eax, dword [esi + 0x38]
mov edx, dword [eax + 0x18]
mov eax, ebx
call fcn.0040eb18
mov eax, dword [esi + 0x38]
mov edx, dword [eax + 0x1c]
mov eax, ebx
call fcn.0040eb5c
mov eax, dword [ebx + 0x30]
call fcn.0040f17c
push eax
mov eax, ebx
call fcn.0040eb40
pop edx
sub edx, eax
sar edx, 1
jns 0x487653
adc edx, 0
mov eax, ebx
call fcn.0040eac8
mov edx, dword [ebx + 0x28]
or edx, 0x20
mov eax, ebx
call fcn.0040e4d4
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x48ee94
mov eax, ebx
call fcn.0040f034
mov eax, ebx
call fcn.0040eafc
add dword [ebp - 4], eax
mov dl, 2
mov eax, edi
call fcn.0040d578
mov dl, 1
call fcn.0040fde8
mov ebx, eax
push 0
push 0
mov eax, ebx
mov cl, 1
mov dl, 1
call fcn.004102b0
mov eax, ebx
mov edx, dword [ebp - 4]
call fcn.0040ea7c
lea edx, [ebp - 8]
mov eax, 8
call fcn.0044d254
mov edx, dword [ebp - 8]
mov eax, ebx
call fcn.0040e5f0
mov eax, dword [ebx + 0x30]
call fcn.0040f17c
mov esi, eax
mov eax, ebx
call fcn.0040eb40
sub esi, eax
sar esi, 1
jns 0x4876e0
adc esi, 0
mov eax, 3
call fcn.004874a4
mov edx, esi
sub edx, eax
mov eax, ebx
call fcn.0040eac8
mov eax, ebx
call fcn.0040f55c
xor edx, edx
mov eax, edi
call fcn.0040ce48
mov ebx, eax
mov eax, 0x258
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040ea7c
mov eax, 0x10
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040eb18
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push fcn.0048fca4
mov eax, ebx
call fcn.0040f790
mov eax, ebx
xor edx, edx
call fcn.0040e698
xor edx, edx
mov eax, edi
call fcn.0040ce48
mov ebx, eax
mov eax, 0x270
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040ea7c
mov eax, 0x10
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040eb18
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push fcn.004900e4
mov eax, ebx
call fcn.0040f790
mov eax, ebx
xor edx, edx
call fcn.0040e698
xor edx, edx
mov eax, edi
call fcn.0040ce48
mov ebx, eax
mov eax, 0x288
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040ea7c
mov eax, 0x10
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040eb18
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push fcn.004914fc
mov eax, ebx
call fcn.0040f790
mov eax, ebx
xor edx, edx
call fcn.0040e698
xor edx, edx
mov eax, edi
call fcn.0040ce48
mov esi, eax
mov ebx, esi
push 1
push 0
mov cl, 1
xor edx, edx
mov eax, ebx
call fcn.004102b0
push 0
push 0xffffffffffffffff
mov ecx, esi
mov edx, dword [0x486c14]
xor eax, eax
call fcn.00488b98
mov esi, eax
mov dword [ebx + 0xee], esi
mov eax, esi
xor ecx, ecx
mov edx, 0xa
call fcn.00488c10
mov eax, dword [ebx + 0x30]
call fcn.0040eafc
mov edx, dword [esi + 0x38]
sub eax, dword [edx + 0x18]
push eax
mov eax, 8
call fcn.004874a4
pop edx
sub edx, eax
mov eax, ebx
call fcn.0040ea7c
mov eax, 8
call fcn.004874b8
mov edx, eax
mov eax, ebx
call fcn.0040eac8
mov eax, 0x20
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040eb18
mov eax, 0x20
call fcn.004874b8
mov edx, eax
mov eax, ebx
call fcn.0040eb5c
mov edx, dword [ebx + 0x28]
or edx, 0x20
mov eax, ebx
call fcn.0040e4d4
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x48a1b0
mov eax, ebx
call fcn.0040f790
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x48efa8
mov eax, ebx
call fcn.0040f034
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x48ec24
mov eax, ebx
call fcn.0040fb28
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x48ec34
mov eax, ebx
call fcn.0040fb50
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4878fa
lea eax, [ebp - 8]
call fcn.00407090
ret