Function at 0x64a70fc0
Capabilities:
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x8c
mov eax, dword [ebp + 0x1c]
mov esi, dword [ebp + 0x28]
mov edi, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x30]
fld dword [eax]
fld dword [edi + 8]
fld dword [esi]
mov ebx, dword [edi]
fsub st(2)
fmul st(1)
faddp st(2)
fld dword [eax + 4]
fld dword [esi + 4]
fsub st(1)
fmul st(2)
faddp st(1)
test ecx, ecx
je 0x64a71008
test byte [0x64ab50c0], 1
jne 0x64a714da
fxch st(1)
jmp 0x64a7100a
fxch st(1)
fmul dword [esi + 0xc]
fadd st(1)
fld dword [edi + 4]
fxch st(1)
fcomi st(1)
fstp st(1)
jbe 0x64a7101f
fstp dword [edi + 4]
jmp 0x64a71021
fstp st(0)
mov eax, dword [ebp + 0x14]
cmp dword [ebp + 0x10], eax
jge 0x64a71448
fstp dword [ebp - 0x5c]
mov esi, ebx
fstp dword [ebp - 0x60]
lea eax, [ebp - 0x2c]
mov dword [esp + 0x18], 0x64abb2d8
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 3
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
movzx eax, word [eax + ebx*2]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sym._GetGlyphOutlineW_28
mov dword [ebp - 0x58], eax
sub esp, 0x1c
cmp eax, 0xffffffff
je 0x64a714cd
mov dword [esp + 8], eax
mov dword [esp + 4], 8
mov ebx, dword fs:[0x18]
mov eax, dword [ebx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapAlloc]
mov dword [ebp - 0x44], eax
sub esp, 0xc
test eax, eax
je 0x64a71499
mov eax, dword [ebp - 0x58]
mov dword [esp], esi
shr eax, 3
mov dword [esp + 4], eax
call sym._lengthen_path
test eax, eax
je 0x64a71499
mov dword [esp + 0x18], 0x64abb2d8
mov edx, dword [ebp - 0x44]
mov dword [esp + 0x14], edx
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x2c]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
mov dword [esp + 8], 3
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
movzx eax, word [edx + ecx*2]
mov dword [esp + 4], eax
mov edx, dword [ebp + 8]
mov dword [esp], edx
call sym._GetGlyphOutlineW_28
mov edx, dword [ebp - 0x58]
sub esp, 0x1c
test edx, edx
je 0x64a71456
fld dword [ebp - 0x5c]
fld dword [ebp - 0x60]
mov dword [ebp - 0x50], 0
mov ebx, edi
mov dword [ebp - 0x40], 0
mov edx, dword [ebp - 0x40]
lea esi, [esi]
nop
mov eax, dword [ebp - 0x44]
lea edi, [eax + edx]
mov eax, dword [esi + 4]
mov edx, dword [esi + 0xc]
mov dword [ebp - 0x48], edi
mov byte [edx + eax], 0
movzx eax, word [edi + 8]
mov edx, dword [esi + 4]
mov dword [ebp - 0x3c], eax
fild dword [ebp - 0x3c]
fld dword [0x64abb530]
mov eax, dword [esi + 8]
fmul st(1), st(0)
fild word [edi + 0xa]
faddp st(2)
fxch st(1)
fmul dword [ebx + 8]
fadd st(2)
fstp dword [eax + edx*8]
fld dword [ebx + 0xc]
movzx eax, word [edi + 0xc]
mov edx, dword [esi + 8]
mov dword [ebp - 0x3c], eax
mov eax, dword [esi + 4]
fadd st(3)
fild dword [ebp - 0x3c]
lea ecx, [eax + 1]
fmulp st(2)
fild word [edi + 0xe]
faddp st(2)
fxch st(1)
fmul dword [ebx + 8]
mov dword [esi + 4], ecx
fsubp st(1)
fstp dword [edx + eax*8 + 4]
test byte [0x64ab50c0], 8
jne 0x64a71398
mov eax, dword [ebp - 0x40]
lea edi, [eax + 0x10]
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
cmp eax, 0x10
jbe 0x64a7128a
lea esi, [esi]
nop
mov eax, dword [ebp - 0x44]
add eax, edi
movzx edx, word [eax + 2]
mov ecx, edx
lea edi, [edi + edx*8 + 4]
movzx edx, word [eax]
cmp dx, 1
je 0x64a71308
cmp dx, 3
jne 0x64a712b0
xor edx, edx
test cx, cx
je 0x64a71278
mov dword [ebp - 0x4c], edi
lea esi, [esi]
mov ecx, dword [esi + 4]
mov edi, dword [esi + 0xc]
mov byte [edi + ecx], 3
movzx ecx, word [eax + edx*8 + 4]
mov edi, dword [esi + 4]
mov dword [ebp - 0x3c], ecx
fild dword [ebp - 0x3c]
fld dword [0x64abb530]
mov ecx, dword [esi + 8]
fmul st(1), st(0)
fild word [eax + edx*8 + 6]
faddp st(2)
fxch st(1)
fmul dword [ebx + 8]
fadd st(2)
fstp dword [ecx + edi*8]
fld dword [ebx + 0xc]
movzx ecx, word [eax + edx*8 + 8]
mov dword [ebp - 0x3c], ecx
mov ecx, dword [esi + 4]
fadd st(3)
fild dword [ebp - 0x3c]
lea edi, [ecx + 1]
fmulp st(2)
fild word [eax + edx*8 + 0xa]
add edx, 1
faddp st(2)
fxch st(1)
fmul dword [ebx + 8]
mov dword [esi + 4], edi
mov edi, dword [esi + 8]
fsubp st(1)
fstp dword [edi + ecx*8 + 4]
movzx ecx, word [eax + 2]
cmp ecx, edx
jg 0x64a71200
mov eax, dword [ebp - 0x48]
mov edi, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x40]
mov eax, edi
sub eax, edx
mov edx, dword [ebp - 0x3c]
cmp eax, edx
jb 0x64a711c8
mov eax, dword [esi + 4]
mov edx, dword [esi + 0xc]
or byte [edx + eax - 1], 0x80
mov eax, dword [ebp - 0x58]
cmp edi, eax
jae 0x64a713de
mov dword [ebp - 0x40], edi
mov edx, edi
jmp 0x64a71138
mov dword [ebp - 0x50], 1
test byte [0x64ab50c0], 2
je 0x64a71278
fstp dword [ebp - 0x54]
fstp dword [ebp - 0x4c]
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], str.Unhandled_type:__u_n
mov dword [esp + 8], str.format_string_callback
mov dword [esp + 4], 0x64ab50c0
mov dword [esp], 1
call sym._wine_dbg_log.constprop.1_4
mov eax, dword [ebp - 0x48]
fld dword [ebp - 0x4c]
fld dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
jmp 0x64a71278
test cx, cx
je 0x64a71278
mov dword [ebp - 0x4c], edi
xor edx, edx
lea esi, [esi]
lea esi, [esi]
mov ecx, dword [esi + 4]
mov edi, dword [esi + 0xc]
mov byte [edi + ecx], 1
movzx ecx, word [eax + edx*8 + 4]
mov edi, dword [esi + 4]
mov dword [ebp - 0x3c], ecx
fild dword [ebp - 0x3c]
fld dword [0x64abb530]
mov ecx, dword [esi + 8]
fmul st(1), st(0)
fild word [eax + edx*8 + 6]
faddp st(2)
fxch st(1)
fmul dword [ebx + 8]
fadd st(2)
fstp dword [ecx + edi*8]
fld dword [ebx + 0xc]
movzx ecx, word [eax + edx*8 + 8]
mov dword [ebp - 0x3c], ecx
mov ecx, dword [esi + 4]
fadd st(3)
fild dword [ebp - 0x3c]
lea edi, [ecx + 1]
fmulp st(2)
fild word [eax + edx*8 + 0xa]
add edx, 1
faddp st(2)
fxch st(1)
fmul dword [ebx + 8]
mov dword [esi + 4], edi
mov edi, dword [esi + 8]
fsubp st(1)
fstp dword [edi + ecx*8 + 4]
movzx ecx, word [eax + 2]
cmp ecx, edx
jg 0x64a71320
jmp 0x64a7126d
fxch st(1)
fst qword [esp + 0x1c]
fstp dword [ebp - 0x4c]
fst qword [esp + 0x14]
mov eax, dword [esi + 4]
fstp dword [ebp - 0x3c]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Starting_at_count__i_with_pos__f___f__n
mov dword [esp + 8], str.format_string_callback
mov dword [esp + 4], 0x64ab50c0
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_5
fld dword [ebp - 0x4c]
fld dword [ebp - 0x3c]
jmp 0x64a711ac
fstp st(0)
fstp st(0)
mov dword [esi + 0x10], 1
fld dword [ebx + 8]
mov edi, ebx
fild word [ebp - 0x1c]
mov ebx, dword [ebp - 0x44]
mov eax, dword fs:[0x18]
fmul st(1)
fadd dword [ebp - 0x60]
fstp dword [ebp - 0x60]
fild word [ebp - 0x1a]
fmulp st(1)
fadd dword [ebp - 0x5c]
fstp dword [ebp - 0x5c]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [ebp - 0x50]
sub esp, 0xc
test eax, eax
jne 0x64a714cd
add dword [ebp + 0x10], 1
mov eax, dword [ebp + 0x10]
cmp dword [ebp + 0x14], eax
jne 0x64a71035
jmp 0x64a7144c
fstp st(0)
fstp st(0)
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esi + 0x10], 1
fld dword [edi + 8]
fild word [ebp - 0x1c]
mov eax, dword [ebp - 0x44]
fmul st(1)
fadd dword [ebp - 0x60]
fstp dword [ebp - 0x60]
fild word [ebp - 0x1a]
fmulp st(1)
fadd dword [ebp - 0x5c]
fstp dword [ebp - 0x5c]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [ebx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapFree]
sub esp, 0xc
jmp 0x64a71436
mov ebx, dword [ebp - 0x44]
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov dword [esp + 8], ebx
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, 3
sub esp, 0xc
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea esp, [ebp - 0xc]
mov eax, 1
pop ebx
pop esi
pop edi
pop ebp
ret
fstp st(1)
fxch st(1)
fstp dword [ebp - 0x40]
fstp dword [ebp - 0x3c]
mov dword [esp + 0xc], str.hotkey_underlines_not_drawn_yet_n
mov dword [esp + 8], str.format_string_callback
mov dword [esp + 4], 0x64ab50c0
mov dword [esp], 0
call sym._wine_dbg_log.constprop.2
fld dword [edi + 8]
fld dword [ebp - 0x3c]
fld dword [ebp - 0x40]
fxch st(2)
jmp 0x64a7100a