Function at 0x404a60
Capabilities:
Access peb ldr_data
Get graphical window text
Get kernel32 base address
Get process heap flags
Set registry value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x26c
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
movzx eax, word [0x40a034]
cmp eax, edx
je 0x404c61
cmp edx, 0x10
je 0x405151
jbe 0x404af4
cmp edx, 0x117
je 0x405195
ja 0x404ad0
cmp edx, 0x11
je 0x404f10
cmp edx, 0x111
jne 0x405173
movzx eax, word [ebp + 0x10]
sub eax, 0x100
cmp eax, 0x40
ja case.0x404ac1.263
jmp dword [eax*4 + 0x409180]
cmp edx, 0x233
je 0x404ec0
xor eax, eax
cmp edx, 0x307
jne 0x405173
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
cmp edx, 2
je 0x4050e0
jbe 0x404b25
cmp edx, 5
je 0x404e75
cmp edx, 7
jne 0x405173
mov eax, dword [0x40a40c]
mov dword [esp], eax
call sym.unk_118
xor eax, eax
sub esp, 4
jmp 0x404aea
cmp edx, 1
jne 0x405173
lea eax, [ebp - 0x220]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sym.unk_215
mov edx, dword [0x40a400]
mov ecx, dword [ebp + 8]
sub esp, 8
cmp dword [0x40a470], 1
mov dword [esp + 0x28], edx
mov edx, dword [ebp - 0x214]
sbb eax, eax
and eax, 0x100080
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], edx
mov edx, dword [ebp - 0x218]
add eax, 0x50a00144
mov dword [esp + 0x2c], 0
mov dword [esp + 0x18], edx
mov dword [esp + 0x24], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.edit
mov dword [esp], 0x200
call sym.unk_121
sub esp, 0x30
mov dword [0x40a40c], eax
mov dword [esp], 0x40a414
call sym.unk_143
sub esp, 4
mov dword [0x40a410], eax
mov dword [esp + 8], eax
mov eax, dword [0x40a40c]
mov dword [esp + 0xc], 0
mov dword [esp + 4], 0x30
mov dword [esp], eax
call sym.unk_96
mov eax, dword [0x40a40c]
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xc5
mov dword [esp], eax
call sym.unk_96
xor eax, eax
sub esp, 0x10
jmp 0x404aea
mov eax, dword [0x40a40c]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb1
mov dword [esp], eax
call sym.unk_96
sub esp, 0x10
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
mov eax, dword [ebx + 0xc]
test al, 0x40
je 0x404c72
mov dword [0x40a408], 0
test al, 8
jne 0x405081
test al, 0x10
jne 0x404f22
test al, 0x20
je case.0x404ac1.263
mov eax, dword [ebx]
mov dword [0x40b5ac], eax
mov eax, dword [ebx + 4]
mov dword [0x40b5b0], eax
mov eax, dword [ebx + 8]
mov dword [0x40b5b4], eax
mov eax, dword [ebx + 0xc]
mov dword [0x40b5b8], eax
mov eax, dword [ebx + 0x10]
mov dword [0x40b5bc], eax
mov eax, dword [ebx + 0x14]
mov dword [0x40b5c0], eax
mov eax, dword [ebx + 0x18]
mov dword [0x40b5c4], eax
mov eax, dword [ebx + 0x1c]
mov dword [0x40b5c8], eax
mov eax, dword [ebx + 0x20]
mov dword [0x40b5cc], eax
mov eax, dword [ebx + 0x24]
mov dword [0x40b5d0], eax
mov edx, dword [ebx + 0x10]
cmp word [edx], 0
je 0x405b8c
mov eax, edx
add eax, 2
cmp word [eax], 0
jne 0x404ce4
sub eax, edx
sar eax, 1
mov dword [ebp - 0x240], eax
mov eax, dword [0x40a40c]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb1
mov dword [esp], eax
mov esi, dword fs:[0x18]
call sym.unk_96
sub esp, 0x10
mov eax, dword [0x40a40c]
mov dword [esp], eax
call sym.unk_136
lea edx, [eax + 1]
sub esp, 4
lea eax, [edx + edx]
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov dword [ebp - 0x23c], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sym.unk_180
sub esp, 0xc
mov edi, eax
test eax, eax
je case.0x404ac1.263
mov edx, dword [ebp - 0x23c]
mov dword [esp + 4], eax
mov eax, dword [0x40a40c]
mov dword [esp + 8], edx
mov dword [esp], eax
call sym.unk_160
lea eax, [ebp - 0x220]
sub esp, 0xc
mov dword [esp + 0xc], eax
mov eax, dword [0x40a40c]
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb0
mov dword [esp], eax
call sym.unk_96
mov eax, dword [ebx + 0xc]
sub esp, 0x10
and eax, 5
cmp eax, 1
je 0x4052d0
cmp eax, 5
jne case.0x404ac1.263
mov eax, dword [ebx + 0x10]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x220]
lea eax, [edi + eax*2]
mov dword [esp], eax
call sym.unk_100
sub esp, 8
mov edx, eax
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x23c], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sym.unk_198
mov edx, dword [ebp - 0x23c]
sub esp, 0xc
test edx, edx
je 0x404c2d
mov eax, dword [ebp - 0x240]
sub edx, edi
mov dword [esp + 4], 0xb1
sar edx, 1
add eax, edx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [0x40a40c]
mov dword [esp], eax
call sym.unk_96
mov eax, dword [ebx + 0x14]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov eax, dword [0x40a40c]
mov dword [esp + 8], 1
mov dword [esp + 4], 0xc2
mov dword [esp], eax
call sym.unk_96
sub esp, 0x10
jmp 0x404d26
mov eax, ebx
movzx ebx, bx
mov dword [esp + 0x18], 0x204
shr eax, 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
mov eax, dword [0x40a40c]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call sym.unk_168
xor eax, eax
sub esp, 0x1c
jmp 0x404aea
mov eax, dword [ebp + 0x10]
lea ebx, [ebp - 0x220]
mov dword [esp + 0xc], 0x104
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
call sym.unk_144
mov eax, dword [ebp + 0x10]
sub esp, 0x10
mov dword [esp], eax
call sym.unk_113
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov dword [esp], ebx
call dbg.DoOpenFile
xor eax, eax
jmp 0x404aea
call sym._DoCloseFile
test eax, eax
setne al
movzx eax, al
jmp 0x404aea
mov eax, dword [ebx]
mov dword [0x40b5ac], eax
mov eax, dword [ebx + 4]
mov dword [0x40b5b0], eax
mov eax, dword [ebx + 8]
mov dword [0x40b5b4], eax
mov eax, dword [ebx + 0xc]
mov dword [0x40b5b8], eax
mov eax, dword [ebx + 0x10]
mov dword [0x40b5bc], eax
mov eax, dword [ebx + 0x14]
mov dword [0x40b5c0], eax
mov eax, dword [ebx + 0x18]
mov dword [0x40b5c4], eax
mov eax, dword [ebx + 0x1c]
mov dword [0x40b5c8], eax
mov eax, dword [ebx + 0x20]
mov dword [0x40b5cc], eax
mov eax, dword [ebx + 0x24]
mov dword [0x40b5d0], eax
mov edx, dword [ebx + 0x10]
cmp word [edx], 0
je 0x405b7d
mov eax, edx
add eax, 2
cmp word [eax], 0
jne 0x404f80
sub eax, edx
sar eax, 1
mov dword [ebp - 0x23c], eax
mov eax, dword [0x40a40c]
mov dword [esp], eax
call sym.unk_136
lea edi, [eax + 1]
sub esp, 4
lea edx, [edi + edi]
mov dword [esp + 4], 0
mov dword [esp + 8], edx
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sym.unk_180
sub esp, 0xc
mov esi, eax
test eax, eax
je 0x405a00
mov dword [esp + 4], eax
mov eax, dword [0x40a40c]
mov dword [esp + 8], edi
mov dword [esp], eax
call sym.unk_160
lea eax, [ebp - 0x224]
sub esp, 0xc
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x220]
mov dword [esp + 8], eax
mov eax, dword [0x40a40c]
mov dword [esp + 4], 0xb0
mov dword [esp], eax
call sym.unk_96
mov eax, dword [ebx + 0xc]
sub esp, 0x10
mov ecx, eax
and ecx, 5
cmp ecx, 1
je 0x405b10
cmp ecx, 5
jne 0x404c82
mov ecx, dword [ebp - 0x220]
mov eax, dword [ebp - 0x224]
sub eax, ecx
cmp eax, dword [ebp - 0x23c]
je 0x405b9b
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sym.unk_198
sub esp, 0xc
mov dword [esp], ebx
call dbg.NOTEPAD_DoFind
mov eax, dword [ebx + 0xc]
jmp 0x404c82
mov eax, dword [ebx]
mov dword [0x40b5ac], eax
mov eax, dword [ebx + 4]
mov dword [0x40b5b0], eax
mov eax, dword [ebx + 8]
mov dword [0x40b5b4], eax
mov eax, dword [ebx + 0xc]
mov dword [0x40b5b8], eax
mov eax, dword [ebx + 0x10]
mov dword [0x40b5bc], eax
mov eax, dword [ebx + 0x14]
mov dword [0x40b5c0], eax
mov eax, dword [ebx + 0x18]
mov dword [0x40b5c4], eax
mov eax, dword [ebx + 0x1c]
mov dword [0x40b5c8], eax
mov eax, dword [ebx + 0x20]
mov dword [0x40b5cc], eax
mov eax, dword [ebx + 0x24]
mov dword [esp], ebx
mov dword [0x40b5d0], eax
call dbg.NOTEPAD_DoFind
mov eax, dword [ebx + 0xc]
jmp 0x404c7a
lea eax, [ebp - 0x228]
mov dword [esp + 0x18], 0
mov dword [esp + 0x20], eax
lea eax, [ebp - 0x22c]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], 0xf003f
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.SoftwareMicrosoftNotepad
mov dword [esp], 0x80000001
call sym.unk_192
sub esp, 0x24
test eax, eax
je 0x4052f2
mov dword [esp], 0
call sym.unk_149
xor eax, eax
sub esp, 4
jmp 0x404aea
call sym._DoCloseFile
test eax, eax
je case.0x404ac1.263
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sym.unk_210
xor eax, eax
sub esp, 4
jmp 0x404aea
mov eax, dword [ebp + 0x10]
mov dword [esp + 0xc], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sym.unk_217
sub esp, 0x10
jmp 0x404aea
mov eax, dword [0x40a40c]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xc6
mov dword [esp], eax
call sym.unk_96
sub esp, 0x10
test eax, eax
sete al
mov dword [esp + 4], 0x110
movzx eax, al
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call sym.unk_171
sub esp, 0xc
mov dword [esp], 1
call sym.unk_182
sub esp, 4
test eax, eax
sete al
mov dword [esp + 4], 0x113
xor ebx, ebx
movzx eax, al
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call sym.unk_171
mov eax, dword [0x40a40c]
sub esp, 0xc
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb0
mov dword [esp], eax
call sym.unk_96
mov edx, eax
sub esp, 0x10
shr edx, 0x10
mov dword [esp + 4], 0x111
cmp dx, ax
mov eax, dword [ebp + 0x10]
sete bl
mov dword [esp + 8], ebx
mov dword [esp], eax
call sym.unk_171
mov eax, dword [ebp + 0x10]
sub esp, 0xc
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x112
mov dword [esp], eax
call sym.unk_171
mov eax, dword [ebp + 0x10]
sub esp, 0xc
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x114
mov dword [esp], eax
call sym.unk_171
mov eax, dword [0x40a40c]
sub esp, 0xc
mov dword [esp], eax
call sym.unk_136
sub esp, 4
test eax, eax
sete al
mov dword [esp + 4], 0x116
movzx eax, al
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call sym.unk_171
xor eax, eax
sub esp, 0xc
jmp 0x404aea
mov eax, dword [ebx + 0x10]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x220]
lea eax, [edi + eax*2]
mov dword [esp], eax
call sym.unk_125
sub esp, 8
mov edx, eax
jmp 0x404de6
lea eax, [ebp - 0x220]
lea ebx, [ebp - 0x224]
mov dword [ebp - 0x220], 0x2c
mov dword [esp + 4], eax
mov eax, dword [0x40a404]
mov dword [esp], eax
call sym.unk_158
mov eax, dword [ebp - 0x204]
sub esp, 8
mov dword [0x40a024], eax
mov eax, dword [ebp - 0x200]
mov dword [esp + 0x14], 4
mov dword [0x40a028], eax
mov eax, dword [ebp - 0x1fc]
mov dword [esp + 0x10], ebx
mov dword [0x40a02c], eax
mov eax, dword [ebp - 0x1f8]
mov dword [esp + 0xc], 4
mov dword [0x40a030], eax
mov eax, dword [0x40a470]
mov dword [esp + 8], 0
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 4], str.fWrap
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40a024]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iWindowPosX
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40a028]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iWindowPosY
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40a02c]
sub eax, dword [0x40a024]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
sub esp, 0x18
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iWindowPosDX
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40a030]
sub eax, dword [0x40a028]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
sub esp, 0x18
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iWindowPosDY
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a42b]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfCharSet
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a42d]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfClipPrecision
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40a41c]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfEscapement
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a428]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfItalic
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40a420]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfOrientation
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a42c]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfOutPrecision
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a42f]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfPitchAndFamily
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a42e]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfQuality
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a42a]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfStrikeOut
mov dword [esp], eax
call sym.unk_117
movzx eax, byte [0x40a429]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfUnderline
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40a424]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfWeight
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40b164]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iMarginTop
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40b168]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iMarginBottom
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40b16c]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iMarginLeft
mov dword [esp], eax
call sym.unk_117
mov eax, dword [0x40b170]
sub esp, 0x18
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iMarginRight
mov dword [esp], eax
call sym.unk_117
sub esp, 0x18
call dbg.get_dpi
mov edx, dword [0x40a414]
mov dword [esp + 4], 0x2d0
mov dword [esp + 8], eax
mov eax, dword [0x40a414]
sar eax, 0x1f
xor edx, eax
sub edx, eax
mov dword [esp], edx
call sym.unk_218
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x22c]
sub esp, 0xc
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0
mov dword [esp + 4], str.iPointSize
mov dword [esp], eax
call sym.unk_117
sub esp, 0x18
cmp word [0x40a430], 0
je 0x405bc4
mov eax, 0x40a430
add eax, 2
cmp word [eax], 0
jne 0x4058e0
sub eax, 0x40a430
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x10], 0x40a430
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], str.lfFaceName
mov dword [esp], eax
call sym.unk_117
sub esp, 0x18
cmp word [0x40b174], 0
je 0x405bd2
mov eax, 0x40b174
lea esi, [esi]
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x405940
sub eax, 0x40b174
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x10], 0x40b174
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], str.szHeader
mov dword [esp], eax
call sym.unk_117
sub esp, 0x18
cmp word [0x40b37c], 0
je 0x405bcb
mov eax, 0x40b37c
lea esi, [esi]
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x4059a0
sub eax, 0x40b37c
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0x10], 0x40b37c
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], str.szTrailer
mov dword [esp], eax
call sym.unk_117
mov eax, dword [ebp - 0x22c]
sub esp, 0x18
mov dword [esp], eax
call sym.unk_207
sub esp, 4
jmp 0x40513b
mov eax, dword [ebx + 0xc]
jmp 0x404c82
call dbg.DIALOG_SelectFont
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_HelpAboutNotepad
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_HelpContents
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_Replace
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_SearchNext
xor eax, eax
jmp 0x404aea
call sym._DIALOG_Search
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditWrap
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditTimeDate
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditSelectAll
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditDelete
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditPaste
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditCopy
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditCut
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_EditUndo
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_FileExit
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_FilePrinterSetup
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_FilePageSetup
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_FilePrint
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_FileSaveAs
xor eax, eax
jmp 0x404aea
call sym._DIALOG_FileSave
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_FileOpen
xor eax, eax
jmp 0x404aea
call dbg.DIALOG_FileNew
xor eax, eax
jmp 0x404aea
mov ecx, dword [ebp - 0x220]
mov eax, dword [ebp - 0x224]
sub eax, ecx
cmp eax, dword [ebp - 0x23c]
jne 0x40504e
mov eax, dword [ebp - 0x23c]
mov dword [esp + 8], eax
lea eax, [esi + ecx*2]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call sym.unk_185
sub esp, 0xc
test eax, eax
jne 0x40504e
mov eax, dword [ebx + 0x14]
mov dword [esp + 8], 1
mov dword [esp + 4], 0xc2
mov dword [esp + 0xc], eax
mov eax, dword [0x40a40c]
mov dword [esp], eax
call sym.unk_96
sub esp, 0x10
jmp 0x40504e
mov dword [ebp - 0x23c], 0
jmp 0x404f93
mov dword [ebp - 0x240], 0
jmp 0x404cf7
mov eax, dword [ebp - 0x23c]
mov dword [esp + 8], eax
lea eax, [esi + ecx*2]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x10]
mov dword [esp], eax
call sym.unk_155
sub esp, 0xc
test eax, eax
jne 0x40504e
jmp 0x405b51
xor eax, eax
jmp 0x4058ee
xor eax, eax
jmp 0x4059ae
xor eax, eax
jmp 0x40594e