Function at 0x442e10
Capabilities:
Get graphical window text

Disassembly:
push ebp
lea ebp, [esp - 0x198]
sub esp, 0x218
mov eax, dword [0x47a4b0]
xor eax, ebp
mov dword [ebp + 0x194], eax
push edi
xor edi, edi
cmp dword [esi + 0x7c], edi
jne 0x442e48
push dword [esi + 0x14]
call dword [sym.imp.FcCtrl4.dll_Document_IsRecordDirty]
test eax, eax
jne 0x442e48
xor eax, eax
inc eax
jmp 0x443167
cmp dword [esi + 0x44], edi
jne 0x442e63
cmp dword [esi + 0x48], edi
jne 0x442e63
cmp dword [esi + 0x4c], edi
jne 0x442e63
cmp dword [esi + 0x50], edi
mov dword [ebp - 0x4c], 1
je 0x442e66
mov dword [ebp - 0x4c], edi
push 0x80
lea eax, [ebp + 0x114]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_GetWindowTextA]
test eax, eax
jne 0x442ea3
cmp dword [ebp - 0x4c], edi
je 0x442e8b
push 0x27c1
jmp 0x442e90
push 0x27c2
call fcn.0046708d
push eax
lea eax, [ebp + 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp - 0x4c], edi
je 0x442eaf
push 0x27c1
jmp 0x442eb4
push 0x27c2
call fcn.0046708d
lea ecx, [ebp + 0x114]
push ecx
push 0x33
push eax
push 0x27c3
call fcn.0046708d
push eax
push dword [esi + 8]
call fcn.00455173
add esp, 0x14
cmp eax, 7
je 0x442e40
cmp eax, 6
je 0x442eee
xor eax, eax
jmp 0x443167
push ebx
push 0x44
pop ebx
push ebx
lea eax, [ebp - 0x48]
push edi
push eax
call sub.MSVCR80.dll_memset
mov dword [ebp - 0x48], ebx
add esp, 0xc
cmp dword [ebp - 0x4c], edi
mov ebx, str.Note
mov eax, ebx
jne 0x442f14
mov eax, str.Popup
lea ecx, [ebp - 0x80]
push ecx
push eax
push dword [esi + 0x34]
call dword [sym.imp.NfoMgr4.dll_Nfo_GetFieldIDA]
cmp eax, edi
je 0x442f4e
cmp dword [ebp - 0x4c], edi
mov eax, ebx
jne 0x442f32
mov eax, str.Popup
lea ecx, [ebp - 0x80]
push ecx
push edi
push edi
lea ecx, [ebp - 0x48]
push ecx
push 1
push 1
push eax
push dword [esi + 0x34]
call dword [sym.imp.NfoMgr4.dll_Nfo_AddFieldA]
cmp eax, edi
jne 0x442f8c
mov ebx, dword [sym.imp.FcCtrl4.dll_Document_SetUpdate]
push edi
push dword [esi + 0x14]
call ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push edi
push edi
push dword [esi + 0x14]
call dword [sym.imp.FcCtrl4.dll_Document_SetSelection]
push 1
lea eax, [ebp - 0x80]
push eax
push dword [esi + 0x14]
call dword [sym.imp.FcCtrl4.dll_Document_AddFields]
push edi
push edi
push edi
push edi
push dword [esi + 0x14]
call dword [sym.imp.FcCtrl4.dll_Document_SetSelection]
push 1
push dword [esi + 0x14]
call ebx
lea eax, [ebp - 0x70]
push eax
push dword [esi + 8]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 0x78
pop ebx
push edi
mov dword [ebp - 0x5c], ebx
call dword [sym.imp.USER32.dll_GetDC]
cmp eax, edi
mov dword [ebp - 0x60], eax
je 0x442fd0
push 0x58
push eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push 0x5a
push dword [ebp - 0x60]
mov ebx, eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push dword [ebp - 0x60]
mov dword [ebp - 0x5c], eax
push edi
call dword [sym.imp.USER32.dll_ReleaseDC]
lea eax, [ebp - 0x58]
push eax
push dword [esi + 0x14]
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x58], 0x442c67
call dword [sym.imp.FcCtrl4.dll_Document_GetFif]
test eax, eax
je 0x443025
cmp dword [ebp - 0x4c], edi
je 0x442ffa
push 0x27c1
jmp 0x442fff
push 0x27c2
call fcn.0046708d
mov edi, eax
call dword [sym.imp.FcCtrl4.dll_FcCtrl_GetErrorA]
push eax
push 0x30
push edi
push 0x46b25c
push dword [esi + 8]
call fcn.00455173
add esp, 0x14
jmp 0x443151
mov eax, dword [ebp - 0x64]
sub eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x5c]
imul eax, eax, 0x5a0
lea eax, [eax + ecx - 1]
cdq
idiv ecx
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
movzx ecx, ax
mov eax, dword [ebp - 0x68]
sub eax, dword [ebp - 0x70]
shl ecx, 0x10
imul eax, eax, 0x5a0
lea eax, [eax + ebx - 1]
cdq
idiv ebx
movzx eax, ax
or ecx, eax
lea eax, [ebp + 0x114]
push eax
mov dword [ebp + 0x90], ecx
call edi
push eax
lea eax, [ebp + 0x114]
push eax
lea eax, [ebp + 0x94]
push eax
call sub.MSVCR80.dll_memcpy
mov ebx, 0x94
push ebx
lea eax, [ebp - 4]
push 0
push eax
call sub.MSVCR80.dll_memset
add esp, 0x18
push str.Popup
lea eax, [ebp]
push eax
mov dword [ebp - 4], ebx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp + 0x114]
push eax
call edi
add eax, 4
mov dword [ebp + 0x80], eax
lea eax, [ebp + 0x90]
mov dword [ebp + 0x84], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp + 0x8c], eax
mov eax, dword [ebp - 0x54]
xor ebx, ebx
cmp dword [ebp - 0x4c], ebx
mov dword [ebp + 0x88], eax
je 0x443104
lea eax, [ebp - 4]
push eax
push dword [esi + 0x18]
call dword [sym.imp.FcCtrl4.dll_Document_SetNote]
test eax, eax
je 0x443155
push 0x27c1
call fcn.0046708d
mov edi, eax
call dword [sym.imp.FcCtrl4.dll_FcCtrl_GetErrorA]
jmp 0x44312f
lea eax, [esi + 0x44]
push eax
lea eax, [ebp - 4]
push eax
push dword [esi + 0x18]
push dword [esi + 0x10]
call fcn.0042cdc6
add esp, 0x10
test eax, eax
jne 0x443155
push 0x27c2
call fcn.0046708d
mov edi, eax
call fcn.0045387a
push eax
push 0x30
push edi
push 0x46b25c
push dword [esi + 8]
call fcn.00455173
add esp, 0x14
cmp dword [ebp - 0x50], ebx
je 0x443151
push dword [ebp - 0x50]
call sub.MSVCR80.dll_free
pop ecx
xor eax, eax
jmp 0x443166
cmp dword [ebp - 0x50], ebx
je 0x443163
push dword [ebp - 0x50]
call sub.MSVCR80.dll_free
pop ecx
xor eax, eax
inc eax
pop ebx
mov ecx, dword [ebp + 0x194]
xor ecx, ebp
pop edi
call fcn.00456f61
add ebp, 0x198
leave
ret