Function at 0x408b60
Capabilities:
Access peb ldr_data
Capture webcam image
Get graphical window text
Get number of processors
Get process heap flags
Get process heap force flags
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x36c
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
cmp dword [0x41a718], esi
je 0x40a420
cmp esi, 0x10
je 0x40a440
jbe 0x408bf0
cmp esi, 0x111
je 0x40a4e0
jbe 0x408c51
cmp esi, 0x233
je 0x40a491
cmp esi, 0x400
je 0x409ff1
cmp esi, 0x117
je 0x408c80
mov eax, dword [ebp + 0x14]
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sub.user32.dll_DefWindowProcW
sub esp, 0x10
mov esi, eax
lea esp, [ebp - 0xc]
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
cmp esi, 5
je 0x40a5a0
jbe 0x408c30
cmp esi, 6
je 0x409160
cmp esi, 0xf
jne 0x408bbf
call sym.unk_49
test eax, eax
jne 0x408bbf
mov eax, dword [ebp + 0x14]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0xf
mov dword [esp + 0xc], eax
jmp 0x408bce
cmp esi, 1
je 0x409180
cmp esi, 2
jne 0x408bbf
mov dword [esp], 0
xor esi, esi
call sub.user32.dll_PostQuitMessage
sub esp, 4
jmp 0x408bde
cmp esi, 0x4e
je 0x409e90
cmp esi, 0x7b
jne 0x408bbf
mov eax, dword [ebp + 0x14]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x7b
mov dword [esp + 0xc], eax
jmp 0x408bce
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x7d1
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
mov esi, eax
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp + 4], 0x7d0
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov edi, eax
lea eax, [ebp - 0x300]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x30c]
mov dword [esp + 8], eax
mov eax, dword [0x41a724]
mov dword [esp + 4], 0xb0
mov dword [esp], eax
call sym.unk_169
mov eax, dword [ebp - 0x300]
sub esp, 0x10
cmp dword [ebp - 0x30c], eax
sete al
mov dword [esp + 4], 0x51e
movzx eax, al
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_EnableMenuItem
mov eax, dword [ebp - 0x300]
sub esp, 0xc
cmp dword [ebp - 0x30c], eax
sete al
mov dword [esp + 4], 0x51f
movzx eax, al
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_EnableMenuItem
lea eax, [ebp - 0x220]
mov dword [ebp - 0x220], 0x9c
sub esp, 0xc
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x43d
mov dword [esp], esi
call sym.unk_169
sub esp, 0x10
mov dword [esp + 4], 0xfffffff0
mov dword [esp], esi
call sub.user32.dll_GetWindowLongW
sub esp, 8
test ah, 8
setne al
mov dword [esp + 4], 0x516
movzx eax, al
mov dword [esp], ebx
shl eax, 3
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
sub esp, 0xc
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb8
mov dword [esp], esi
call sym.unk_169
sub esp, 0x10
test eax, eax
setne al
mov dword [esp + 4], 0x517
movzx eax, al
mov dword [esp], ebx
shl eax, 3
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
mov edx, dword [ebp - 0x21c]
sub esp, 0xc
and edx, 8
mov dword [ebp - 0x32c], edx
jne 0x40a640
mov dword [esp + 8], 0
mov dword [esp + 4], 0x44c
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0x44d
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
mov edx, dword [ebp - 0x32c]
sub esp, 0xc
mov dword [esp + 8], edx
mov dword [esp + 4], 0x44e
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
xor eax, eax
sub esp, 0xc
cmp word [ebp - 0x218], 1
sete al
mov dword [esp + 4], 0x523
shl eax, 3
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
xor eax, eax
sub esp, 0xc
cmp word [ebp - 0x218], 2
sete al
mov dword [esp + 4], 0x524
shl eax, 3
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
xor eax, eax
sub esp, 0xc
cmp word [ebp - 0x218], 3
sete al
mov dword [esp + 4], 0x525
shl eax, 3
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
xor eax, eax
sub esp, 0xc
cmp word [ebp - 0x218], 4
sete al
mov dword [esp + 4], 0x526
shl eax, 3
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
xor eax, eax
sub esp, 0xc
cmp word [ebp - 0x218], 5
sete al
mov dword [esp + 4], 0x527
shl eax, 3
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
xor eax, eax
sub esp, 0xc
cmp word [ebp - 0x218], 6
sete al
mov dword [esp + 4], 0x528
shl eax, 3
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
sub esp, 0xc
mov dword [esp], esi
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xc6
call sym.unk_169
sub esp, 0x10
test eax, eax
sete al
mov dword [esp + 4], 0x51b
movzx eax, al
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_EnableMenuItem
sub esp, 0xc
mov dword [esp], esi
mov esi, 8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x455
call sym.unk_169
sub esp, 0x10
test eax, eax
sete al
mov dword [esp + 4], 0x51c
movzx eax, al
mov dword [esp], ebx
mov dword [esp + 8], eax
call sub.user32.dll_EnableMenuItem
mov eax, dword [0x4102a4]
sub esp, 0xc
mov dword [esp], eax
call sym.unk_60
mov dword [esp + 4], 0x5dc
mov eax, dword [eax*4 + 0x41a708]
mov dword [esp], ebx
and eax, 4
cmovne eax, esi
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
mov eax, dword [0x4102a4]
sub esp, 0xc
mov dword [esp], eax
call sym.unk_60
mov dword [esp + 4], 0x5dd
mov eax, dword [eax*4 + 0x41a708]
mov dword [esp], ebx
and eax, 8
cmovne eax, esi
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
sub esp, 0xc
mov dword [esp], edi
call sub.user32.dll_IsWindowVisible
sub esp, 4
test eax, eax
setne al
mov dword [esp + 4], 0x5de
movzx eax, al
mov dword [esp], ebx
shl eax, 3
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
mov eax, dword [0x4102a4]
sub esp, 0xc
mov dword [esp], eax
call sym.unk_60
mov dword [esp + 4], 0x5df
mov eax, dword [eax*4 + 0x41a708]
mov dword [esp], ebx
and eax, 1
cmovne eax, esi
mov dword [esp + 8], eax
call sub.user32.dll_CheckMenuItem
lea eax, [ebp - 0x2f0]
mov dword [ebp - 0x2f0], 8
mov dword [ebp - 0x2ec], 0x4b0
sub esp, 0xc
mov dword [esp + 8], eax
mov eax, dword [0x41a724]
mov dword [esp + 0xc], 0
mov dword [esp + 4], 0x45f
mov dword [esp], eax
call sym.unk_169
mov edi, eax
sub esp, 0x10
xor eax, eax
test edi, edi
mov dword [esp + 4], 0x3f6
sete al
mov dword [esp], ebx
mov esi, eax
mov dword [esp + 8], esi
call sub.user32.dll_EnableMenuItem
lea eax, [ebp - 0x294]
mov dword [ebp - 0x294], 0x30
mov dword [ebp - 0x290], 0x20
sub esp, 0xc
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x3f7
mov dword [esp], ebx
call sym.unk_179
mov eax, 1
sub esp, 0x10
test edi, edi
je 0x409122
mov edx, dword [ebp - 0x274]
xor eax, eax
test edx, edx
sete al
mov dword [esp + 8], eax
mov dword [esp + 4], 0x3f7
mov dword [esp], ebx
call sub.user32.dll_EnableMenuItem
sub esp, 0xc
mov dword [esp + 8], esi
xor esi, esi
mov dword [esp + 4], 0x3f8
mov dword [esp], ebx
call sub.user32.dll_EnableMenuItem
sub esp, 0xc
jmp 0x408bde
test bx, bx
jne 0x40a6c0
xor esi, esi
lea esp, [ebp - 0xc]
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
mov ebx, eax
mov eax, dword [ebp + 8]
sub esp, 4
mov dword [esp + 0xc], 0x7d0
mov dword [esp + 8], eax
mov dword [esp + 4], str.RichEdit_text
mov dword [esp], 0x50000040
call sym.unk_160
mov eax, dword [ebp + 8]
sub esp, 0x10
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], 0x7d4
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80000000
mov dword [esp + 0x10], 0x80000000
mov dword [esp + 0xc], 0x56000241
mov dword [esp + 8], 0
mov dword [esp + 4], 0x4116a4
mov dword [esp], pe_nt_image_headers32
call sub.user32.dll_CreateWindowExW
mov dword [ebp - 0x30c], 0xc
mov dword [ebp - 0x308], 0
sub esp, 0x30
mov esi, eax
lea eax, [ebp - 0x30c]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x404
mov dword [esp], esi
mov dword [ebp - 0x304], 0
call sym.unk_169
sub esp, 0x10
test eax, eax
je 0x40b555
mov dword [esp + 0x10], ebx
mov dword [esp + 0x30], 0x14
mov dword [esp + 0x2c], 0x10
mov dword [esp + 0x28], 0x10
mov dword [esp + 0x24], 0x18
mov dword [esp + 0x20], 0x18
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x64
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0x7d2
mov dword [esp + 4], 0x5000010a
mov dword [esp], esi
mov dword [ebp - 0x32c], ebx
call sub.comctl32.dll_CreateToolbarEx
mov dword [ebp - 0x324], 0xffffffff
mov dword [ebp - 0x320], 0
mov ebx, eax
sub esp, 0x34
lea eax, [ebp - 0x324]
mov dword [esp], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x413
call sym.unk_169
mov ecx, 0x3eb
sub esp, 0x10
mov edi, eax
lea edx, [eax + 6]
mov eax, ebx
mov dword [esp], 0
call sym.unk_69
lea edx, [edi + 7]
mov eax, ebx
mov ecx, 0x3e9
mov dword [esp], 0
call sym.unk_69
lea edx, [edi + 8]
mov ecx, 0x3ea
mov eax, ebx
mov dword [esp], 0
call sym.unk_69
mov eax, ebx
call sym.unk_68
lea edx, [edi + 0xe]
mov eax, ebx
mov ecx, 0x3f5
mov dword [esp], 0
call sym.unk_69
lea edx, [edi + 9]
mov ecx, 0x3f3
mov eax, ebx
mov dword [esp], 0
call sym.unk_69
mov eax, ebx
call sym.unk_68
lea edx, [edi + 0xc]
mov ecx, 0x3f6
mov eax, ebx
mov dword [esp], 0
call sym.unk_69
mov eax, ebx
call sym.unk_68
mov dword [esp], 0
mov edx, edi
mov eax, ebx
mov ecx, 0x51f
call sym.unk_69
lea edx, [edi + 1]
mov eax, ebx
mov ecx, 0x51e
mov dword [esp], 0
call sym.unk_69
lea edx, [edi + 2]
mov eax, ebx
mov ecx, 0x520
mov dword [esp], 0
call sym.unk_69
lea edx, [edi + 3]
mov eax, ebx
mov ecx, 0x51b
mov dword [esp], 0
call sym.unk_69
lea edx, [edi + 4]
mov ecx, 0x51c
mov eax, ebx
mov dword [esp], 0
call sym.unk_69
mov eax, ebx
call sym.unk_68
mov dword [esp], 0
xor edx, edx
mov eax, ebx
mov ecx, 0x640
call sym.unk_69
mov dword [esp], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x421
call sym.unk_169
sub esp, 0x10
mov dword [esp], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x43a
call sym.unk_169
mov ecx, eax
mov eax, dword [ebp - 0x32c]
sub esp, 0x10
mov dword [esp + 0x2c], 0
shr ecx, 0x10
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], 0x7dd
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], 0x96
mov dword [esp + 0x18], 0xc8
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x50800102
mov dword [esp + 8], 0
mov dword [esp + 4], str.ComboBoxEx32
mov dword [esp], 0
mov dword [ebp - 0x330], ecx
call sub.user32.dll_CreateWindowExW
mov edi, eax
sub esp, 0x30
lea eax, [ebp - 0x300]
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.user32.dll_GetWindowRect
mov ecx, dword [ebp - 0x330]
mov edx, dword [ebp - 0x2f4]
mov dword [ebp - 0x274], ebx
sub edx, dword [ebp - 0x2fc]
sub esp, 8
mov dword [ebp - 0x294], 0x50
cmp edx, ecx
mov dword [esp + 8], 0xffffffff
cmovl edx, ecx
lea ecx, [ebp - 0x294]
mov dword [esp], esi
mov dword [esp + 0xc], ecx
mov dword [esp + 4], 0x40a
mov dword [ebp - 0x26c], edx
mov dword [ebp - 0x25c], edx
mov dword [ebp - 0x334], edx
mov dword [ebp - 0x290], 0x171
mov dword [ebp - 0x28c], 0x105
mov dword [ebp - 0x268], 0
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x260], 2
call sym.unk_169
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x31
mov dword [esp], edi
call sym.unk_169
sub esp, 0x10
mov dword [ebp - 0x330], eax
mov dword [esp], edi
call sub.user32.dll_GetDC
mov ecx, dword [ebp - 0x330]
sub esp, 4
mov ebx, eax
mov dword [esp + 4], ecx
mov dword [esp], eax
call sub.gdi32.dll_SelectObject
sub esp, 8
mov dword [ebp - 0x330], eax
lea eax, [ebp - 0x31c]
mov dword [esp], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xf
mov dword [esp + 4], str.Times_New_Roman
call sub.gdi32.dll_GetTextExtentPointW
lea eax, [ebp - 0x314]
sub esp, 0x10
mov dword [esp], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 3
mov dword [esp + 4], 0x41187c
call sub.gdi32.dll_GetTextExtentPointW
mov ecx, dword [ebp - 0x330]
sub esp, 0x10
mov dword [esp + 4], ecx
mov dword [esp], ebx
call sub.gdi32.dll_SelectObject
sub esp, 8
mov dword [esp + 4], ebx
mov dword [esp], edi
call sub.user32.dll_ReleaseDC
mov eax, dword [ebp - 0x31c]
mov dword [ebp - 0x274], edi
sub esp, 8
mov dword [esp + 8], 2
mov dword [esp + 4], 3
mov dword [esp], eax
call sub.kernel32.dll_MulDiv
lea ecx, [ebp - 0x294]
mov edx, dword [ebp - 0x334]
mov dword [ebp - 0x260], 4
sub esp, 0xc
mov dword [esp + 0xc], ecx
add eax, edx
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0x40a
mov dword [esp], esi
mov dword [ebp - 0x268], eax
call sym.unk_169
mov ebx, dword [ebp - 0x32c]
sub esp, 0x10
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], 0
mov dword [esp + 0x24], 0x7de
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], 0x96
mov dword [esp + 0x18], 0x32
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x50800002
mov dword [esp + 8], 0
mov dword [esp + 4], str.ComboBoxEx32
mov dword [esp], 0
call sub.user32.dll_CreateWindowExW
mov dword [ebp - 0x330], eax
sub esp, 0x30
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x314]
mov dword [esp + 8], 2
mov dword [esp + 4], 3
mov dword [esp], eax
call sub.kernel32.dll_MulDiv
mov edx, dword [ebp - 0x334]
xor dword [ebp - 0x28c], 1
mov dword [ebp - 0x260], 5
sub esp, 0xc
add edx, eax
lea eax, [ebp - 0x294]
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x40a
mov dword [esp], esi
mov dword [ebp - 0x268], edx
call sym.unk_169
mov dword [ebp - 0x32c], ebx
sub esp, 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x30], 0x14
mov dword [esp + 0x2c], 0x10
mov dword [esp + 0x28], 0x10
mov dword [esp + 0x24], 0x10
mov dword [esp + 0x20], 0x10
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x65
mov dword [esp + 0xc], 8
mov dword [esp + 8], 0x7d3
mov dword [esp + 4], 0x1000010a
mov dword [esp], esi
call sub.comctl32.dll_CreateToolbarEx
sub esp, 0x34
mov ebx, eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0x454
mov dword [esp], eax
call sym.unk_169
mov eax, ebx
mov ecx, 0x578
sub esp, 0x10
xor edx, edx
mov dword [esp], 0
call sym.unk_69
mov dword [esp], 0
mov eax, ebx
mov ecx, 0x579
mov edx, 1
call sym.unk_69
mov dword [esp], 0
mov eax, ebx
mov ecx, 0x57a
mov edx, 2
call sym.unk_69
mov dword [esp], 0
mov ecx, 0x57b
mov eax, ebx
mov edx, 3
call sym.unk_69
mov eax, ebx
call sym.unk_68
mov dword [esp], 0
mov eax, ebx
mov ecx, 0x44c
mov edx, 4
call sym.unk_69
mov dword [esp], 0
mov eax, ebx
mov ecx, 0x44d
mov edx, 5
call sym.unk_69
mov dword [esp], 0
mov ecx, 0x44e
mov eax, ebx
mov edx, 6
call sym.unk_69
mov eax, ebx
call sym.unk_68
mov dword [esp], 8
mov ecx, 0x522
mov eax, ebx
mov edx, 7
call sym.unk_69
mov dword [esp], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x421
call sym.unk_169
lea eax, [ebp - 0x294]
mov dword [ebp - 0x274], ebx
mov dword [ebp - 0x260], 3
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0x40a
mov dword [esp], esi
call sym.unk_169
mov ebx, dword [ebp - 0x32c]
sub esp, 0x10
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], 0x7df
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], 0xa
mov dword [esp + 0x18], 0xc8
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x50000000
mov dword [esp + 8], 0
mov dword [esp + 4], str.Static
mov dword [esp], 0
call sub.user32.dll_CreateWindowExW
or dword [ebp - 0x28c], 1
sub esp, 0x30
mov dword [ebp - 0x274], eax
lea eax, [ebp - 0x294]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0x40a
mov dword [esp], esi
mov dword [ebp - 0x260], 0
call sym.unk_169
sub esp, 0x10
mov dword [esp], str.RICHED20.DLL
call sym.unk_188
sub esp, 4
test eax, eax
je 0x40b4c0
mov eax, dword [ebp - 0x32c]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x24], 0x7d1
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x1c], 0x64
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], 0x3e8
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x51301144
mov dword [esp + 8], 0
mov dword [esp + 4], str.RichEdit20W
mov dword [esp], 0x200
call sub.user32.dll_CreateWindowExW
sub esp, 0x30
mov dword [0x41a724], eax
test eax, eax
je 0x40bdce
mov dword [esp], eax
call sym.unk_24
mov eax, dword [0x41a724]
mov dword [esp], eax
call sub.user32.dll_SetFocus
mov eax, dword [0x41a724]
sub esp, 4
mov dword [esp + 0xc], 0x80000
mov dword [esp + 8], 0
mov dword [esp + 4], 0x445
mov dword [esp], eax
call sym.unk_169
sub esp, 0x10
call sym.unk_70
mov eax, dword [0x41a728]
mov dword [esp], eax
call sub.user32.dll_GetDC
sub esp, 4
mov esi, eax
mov dword [esp], edi
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x407
call sym.unk_169
mov byte [ebp - 0x2d9], 1
mov ebx, eax
xor eax, eax
sub esp, 0x10
mov byte [ebp - 0x2d5], 0
mov word [ebp - 0x2d4], ax
lea eax, [ebp - 0x2f0]
mov dword [esp + 0xc], edi
mov dword [esp], esi
lea esi, [ebp - 0x220]
mov dword [esp + 0x10], 0
mov dword [esp + 8], sym.unk_89
mov dword [esp + 4], eax
call sym.unk_184
lea edx, [ebp - 0x21c]
xor eax, eax
mov ecx, 0x1c
mov edi, edx
sub esp, 0x14
rep stosd dword es:[edi], eax
mov eax, dword [0x41a724]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0
mov dword [esp + 4], 0x43a
mov dword [esp], eax
mov dword [ebp - 0x220], 0x74
call sym.unk_169
lea eax, [ebp - 0x206]
sub esp, 0x10
mov dword [esp], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0xc
call sym.unk_169
mov eax, dword [ebp - 0x330]
sub esp, 0x10
call sym.unk_73
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
sub esp, 4
mov ebx, eax
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], 0x419cc0
mov dword [esp + 4], 0x57b
mov dword [esp], eax
call sub.user32.dll_LoadStringW
mov ecx, 0x2a
lea esi, [eax + eax + 2]
sub esp, 0x10
xor eax, eax
lea edx, [esi + 0x419cc0]
jmp 0x409be9
movzx ecx, word [eax + str..rtf]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x409be2
cmp word [esi + 0x419cc0], 0
je 0x40b52d
mov eax, edx
add eax, 2
cmp word [eax], 0
jne 0x409c05
sub eax, edx
sar eax, 1
lea esi, [eax + eax + 2]
add esi, edx
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], esi
mov dword [esp + 4], 0x579
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
mov ecx, 0x2a
lea edx, [esi + eax*2 + 2]
sub esp, 0x10
xor eax, eax
jmp 0x409c4b
movzx ecx, word [eax + 0x4117c4]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x409c44
cmp word [edx], 0
je 0x40b54b
mov eax, edx
add eax, 2
cmp word [eax], 0
jne 0x409c63
sub eax, edx
sar eax, 1
lea esi, [eax + eax + 2]
add esi, edx
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], esi
mov dword [esp + 4], 0x57a
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
mov ecx, 0x2a
lea edx, [esi + eax*2 + 2]
sub esp, 0x10
xor eax, eax
jmp 0x409ca9
movzx ecx, word [eax + 0x4117c4]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x409ca2
cmp word [edx], 0
je 0x40b541
mov eax, edx
add eax, 2
cmp word [eax], 0
jne 0x409cc1
sub eax, edx
sar eax, 1
lea esi, [eax + eax + 2]
add esi, edx
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], esi
mov dword [esp + 4], 0x578
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
mov ecx, 0x2a
lea edx, [esi + eax*2 + 2]
sub esp, 0x10
xor eax, eax
jmp 0x409d07
movzx ecx, word [eax + 0x4117bc]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x409d00
cmp word [edx], 0
je 0x40b537
mov eax, edx
nop
add eax, 2
cmp word [eax], 0
jne 0x409d20
sub eax, edx
sar eax, 1
lea eax, [eax + eax + 2]
xor esi, esi
mov word [edx + eax], si
xor esi, esi
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], 0x419ac0
mov dword [esp + 4], 0x6a4
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
sub esp, 0x10
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], 0x4198c0
mov dword [esp + 4], 0x6a5
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
sub esp, 0x10
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], 0x4196c0
mov dword [esp + 4], 0x5b2
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
sub esp, 0x10
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], 0x4194c0
mov dword [esp + 4], 0x5b3
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
sub esp, 0x10
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], 0x4192c0
mov dword [esp + 4], 0x5b4
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
sub esp, 0x10
mov dword [esp + 0xc], 0xff
mov dword [esp + 8], 0x4190c0
mov dword [esp + 4], 0x5b5
mov dword [esp], ebx
call sub.user32.dll_LoadStringW
mov eax, dword [0x41a724]
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb9
mov dword [esp], eax
call sym.unk_169
sub esp, 0x10
mov dword [esp], str.commdlg_FindReplace
call sub.user32.dll_RegisterWindowMessageW
mov dword [0x41a718], eax
mov eax, dword [ebp + 8]
sub esp, 4
mov dword [esp], eax
call sym.unk_58
mov dword [esp + 4], 0x41a710
mov dword [esp], 0x41a708
call sym.unk_62
call sym.unk_61
mov eax, dword [ebp + 8]
mov dword [esp + 4], 1
mov dword [esp], eax
call sub.shell32.dll_DragAcceptFiles
sub esp, 8
jmp 0x408bde
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x7d1
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
mov dword [ebp - 0x32c], eax
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp + 4], 0x7d4
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov edi, eax
mov dword [esp + 4], 0x7dd
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov ebx, eax
mov dword [esp], edi
mov dword [esp + 4], 0x7de
call sub.user32.dll_GetDlgItem
sub esp, 8
mov esi, eax
mov dword [esp], edi
mov dword [esp + 4], 0x7d3
call sub.user32.dll_GetDlgItem
mov edi, dword [ebp + 0x14]
sub esp, 8
mov edx, dword [edi]
cmp ebx, edx
je 0x40b464
cmp esi, edx
je 0x40a6f0
cmp eax, edx
je 0x40b334
cmp dword [ebp - 0x32c], edx
jne 0x409169
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0x702
jne 0x409169
mov dword [ebp - 0x32c], edx
lea ebx, [ebp - 0x220]
mov esi, 1
call sym.unk_76
mov edx, dword [ebp - 0x32c]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp], edx
mov dword [esp + 4], 0xba
call sym.unk_169
sub esp, 0x10
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0xc]
mov dword [esp + 4], str.selection___d.._d__line_count_ld
mov dword [esp], ebx
mov dword [esp + 8], eax
call sym._sprintf
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x7d0
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.user32.dll_SetWindowTextA
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x400
mov dword [esp], eax
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x7d1
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
mov esi, eax
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp + 4], 0x7d4
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x7d2
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov dword [ebp - 0x32c], eax
mov dword [esp], ebx
mov dword [esp + 4], 0x7d3
call sub.user32.dll_GetDlgItem
lea edx, [ebp - 0x290]
mov ecx, 0x1c
mov dword [ebp - 0x2f0], 8
mov edi, edx
mov ebx, eax
xor eax, eax
sub esp, 8
rep stosd dword es:[edi], eax
lea edx, [ebp - 0x21c]
mov ecx, 0x2e
mov dword [ebp - 0x294], 0x74
mov dword [ebp - 0x2ec], 0x4b0
mov edi, edx
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x2f0]
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0x45f
mov dword [esp], esi
mov dword [ebp - 0x220], 0xbc
call sym.unk_169
mov edi, dword [ebp - 0x32c]
sub esp, 0x10
test eax, eax
setne al
mov dword [esp + 8], 0x3f6
movzx eax, al
mov dword [esp + 4], 0x401
mov dword [esp + 0xc], eax
mov dword [esp], edi
call sym.unk_169
lea eax, [ebp - 0x294]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0x43a
mov dword [esp], esi
call sym.unk_169
lea eax, [ebp - 0x300]
sub esp, 0x10
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x30c]
mov dword [esp + 8], eax
mov dword [esp + 4], 0xb0
mov dword [esp], esi
call sym.unk_169
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xc6
mov dword [esp], esi
call sym.unk_169
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x51b
mov dword [esp + 4], 0x401
mov dword [esp], edi
call sym.unk_169
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x455
mov dword [esp], esi
call sym.unk_169
sub esp, 0x10
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x51c
mov dword [esp + 4], 0x401
mov dword [esp], edi
call sym.unk_169
mov eax, dword [ebp - 0x300]
sub esp, 0x10
cmp dword [ebp - 0x30c], eax
setne al
mov dword [esp + 8], 0x51f
movzx eax, al
mov dword [esp + 4], 0x401
mov dword [esp + 0xc], eax
mov dword [esp], edi
call sym.unk_169
mov eax, dword [ebp - 0x300]
sub esp, 0x10
cmp dword [ebp - 0x30c], eax
setne al
mov dword [esp + 8], 0x51e
movzx eax, al
mov dword [esp + 4], 0x401
mov dword [esp + 0xc], eax
mov dword [esp], edi
call sym.unk_169
xor eax, eax
sub esp, 0x10
test byte [ebp - 0x290], 1
je 0x40a22f
mov eax, dword [ebp - 0x28c]
and eax, 1
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x578
mov dword [esp + 4], 0x402
mov dword [esp], ebx
call sym.unk_169
mov eax, dword [ebp - 0x290]
sub esp, 0x10
not eax
mov dword [esp + 8], 0x578
and eax, 1
mov dword [esp + 4], 0x405
mov dword [esp + 0xc], eax
mov dword [esp], ebx
call sym.unk_169
xor eax, eax
sub esp, 0x10
test byte [ebp - 0x290], 2
je 0x40a28e
mov eax, dword [ebp - 0x28c]
shr eax, 1
and eax, 1
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x579
mov dword [esp + 4], 0x402
mov dword [esp], ebx
call sym.unk_169
mov eax, dword [ebp - 0x290]
sub esp, 0x10
shr eax, 1
mov dword [esp + 8], 0x579
xor eax, 1
mov dword [esp + 4], 0x405
and eax, 1
mov dword [esp], ebx
mov dword [esp + 0xc], eax
call sym.unk_169
xor eax, eax
sub esp, 0x10
test byte [ebp - 0x290], 4
je 0x40a2f1
mov eax, dword [ebp - 0x28c]
shr eax, 2
and eax, 1
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x57a
mov dword [esp + 4], 0x402
mov dword [esp], ebx
call sym.unk_169
mov eax, dword [ebp - 0x290]
sub esp, 0x10
shr eax, 2
mov dword [esp + 8], 0x57a
xor eax, 1
mov dword [esp + 4], 0x405
and eax, 1
mov dword [esp], ebx
mov dword [esp + 0xc], eax
call sym.unk_169
lea eax, [ebp - 0x220]
sub esp, 0x10
mov dword [esp], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x43d
call sym.unk_169
xor eax, eax
sub esp, 0x10
cmp word [ebp - 0x208], 1
sete al
mov dword [esp + 8], 0x44c
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x402
mov dword [esp], ebx
call sym.unk_169
xor eax, eax
sub esp, 0x10
cmp word [ebp - 0x208], 3
sete al
mov dword [esp + 8], 0x44d
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x402
mov dword [esp], ebx
call sym.unk_169
xor eax, eax
sub esp, 0x10
cmp word [ebp - 0x208], 2
sete al
mov dword [esp + 8], 0x44e
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x402
mov dword [esp], ebx
call sym.unk_169
xor eax, eax
sub esp, 0x10
cmp word [ebp - 0x218], 0
setne al
mov dword [esp + 8], 0x522
xor esi, esi
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x402
mov dword [esp], ebx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov eax, dword [ebp + 0x14]
call sym.unk_99
lea esp, [ebp - 0xc]
mov esi, eax
pop ebx
mov eax, esi
pop esi
pop edi
pop ebp
ret 0x10
call sym.unk_49
mov esi, eax
test eax, eax
jne 0x40a5b4
call sym.unk_97
test eax, eax
je 0x409169
mov eax, dword [0x41a728]
mov dword [esp], eax
call sym.unk_55
mov dword [esp + 4], 0x41a710
mov dword [esp], 0x41a708
call sym.unk_63
mov dword [esp], 0
call sub.user32.dll_PostQuitMessage
sub esp, 4
jmp 0x408bde
lea esi, [ebp - 0x220]
mov dword [esp + 0xc], 0x104
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov dword [esp], ebx
call sub.shell32.dll_DragQueryFileW
sub esp, 0x10
mov dword [esp], ebx
call sym.unk_190
sub esp, 4
call sym.unk_97
test eax, eax
je 0x409169
mov eax, esi
xor esi, esi
call sym.unk_95
jmp 0x40916b
call sym.unk_49
mov esi, eax
test eax, eax
jne 0x40a6a2
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x7d1
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov edx, eax
cmp eax, dword [ebp + 0x14]
je 0x409169
movzx edi, bx
cmp edi, 0x51a
je 0x40b582
ja 0x40a9c0
cmp edi, 0x3f6
je 0x40b75b
ja 0x40a8d0
cmp edi, 0x3f0
ja 0x40a965
cmp edi, 0x3ed
jae 0x40b702
cmp edi, 0x3ea
je 0x40b55f
ja 0x40a7e0
cmp edi, 0x3e8
jne 0x40a714
mov eax, dword [ebp + 8]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x10
mov dword [esp], eax
call sub.user32.dll_PostMessageW
sub esp, 0x10
jmp 0x408bde
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + 8]
mov edx, ebx
call sym._OnSize
mov esi, eax
jmp 0x408bde
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
sub esp, 4
mov dword [esp + 4], 0x898
mov dword [esp], eax
call sub.user32.dll_LoadMenuW
mov ebx, eax
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp + 4], 0x7d1
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov esi, eax
call sym.unk_84
mov dword [esp], esi
xor esi, esi
mov dword [esp + 4], 1
call sym.unk_155
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp], eax
call sym.unk_48
mov eax, dword [ebp + 8]
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.user32.dll_SetMenu
mov eax, dword [ebp + 8]
sub esp, 8
mov dword [esp], eax
call sym.unk_58
call sym.unk_83
jmp 0x408bde
movzx edx, word [ebp - 0x208]
cmp edx, 1
mov dword [ebp - 0x32c], edx
je 0x40b4f0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x44c
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
mov edx, dword [ebp - 0x32c]
sub esp, 0xc
cmp edx, 3
jne 0x40b486
mov dword [esp + 8], 8
mov dword [esp + 4], 0x44d
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
sub esp, 0xc
xor edx, edx
jmp 0x408e29
mov eax, dword [ebp + 8]
mov dword [esp + 4], ebx
mov dword [esp], eax
call sym.unk_51
mov esi, eax
jmp 0x408bde
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x7d1
xor esi, esi
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
sub esp, 8
mov dword [esp], eax
call sub.user32.dll_SetFocus
sub esp, 4
jmp 0x408bde
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xfffffcda
jne 0x409169
mov eax, dword [ebp + 0x14]
lea edx, [eax + 0x14]
mov eax, esi
xor esi, esi
call sym.unk_98
jmp 0x408bde
cmp edi, 0x3e9
jne 0x40aa5e
xor eax, eax
lea edi, [ebp - 0x220]
mov ecx, 0x82
rep stosd dword es:[edi], eax
lea edx, [ebp - 0x28c]
mov ecx, 0x14
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [0x41a728]
mov dword [ebp - 0x294], 0x58
mov dword [ebp - 0x260], 0x801804
mov dword [ebp - 0x290], eax
lea eax, [ebp - 0x220]
mov dword [ebp - 0x278], eax
mov eax, dword [0x4102a4]
mov dword [ebp - 0x288], 0x419cc0
mov dword [ebp - 0x274], 0x104
mov dword [ebp - 0x258], 0x411798
cmp eax, 1
je 0x40bdc4
cmp eax, 0x11
sete al
movzx eax, al
add eax, eax
add eax, 1
mov dword [ebp - 0x27c], eax
lea eax, [ebp - 0x294]
mov dword [esp], eax
call sym.unk_183
push edi
test eax, eax
je 0x408bde
call sym.unk_97
test eax, eax
je 0x408bde
mov eax, dword [ebp - 0x278]
call sym.unk_95
jmp 0x408bde
cmp edi, 0x3eb
jne 0x40aa40
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
mov edi, dword [ebp + 8]
push edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], sym.unk_78
mov dword [esp + 8], edi
mov dword [esp + 4], 0x835
mov dword [esp], eax
call sub.user32.dll_DialogBoxParamW
sub esp, 0x14
mov ebx, eax
cmp eax, 0x64
je 0x409169
call sym.unk_97
test eax, eax
je 0x409169
xor eax, eax
call sym.unk_91
mov word [0x41a500], 0
call sym.unk_66
lea eax, [ebp - 0x220]
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov eax, dword [0x41a724]
mov dword [esp + 4], 0x461
mov dword [esp], eax
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0x4b0
call sym.unk_169
mov eax, dword [0x41a724]
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb9
mov dword [esp], eax
call sym.unk_169
mov eax, ebx
sub esp, 0x10
call sym.unk_85
call sym.unk_76
jmp 0x408bde
cmp edi, 0x4b1
je 0x40b6da
jbe 0x40ae80
cmp edi, 0x516
je 0x40b841
jbe 0x40ae30
cmp edi, 0x518
je 0x40b582
ja 0x40baa4
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb8
mov dword [esp], eax
mov dword [ebp - 0x32c], eax
call sym.unk_169
mov edx, dword [ebp - 0x32c]
sub esp, 0x10
test eax, eax
mov dword [esp + 0xc], 0
je 0x40bd5a
mov dword [esp + 8], 0
mov dword [esp + 4], 0xb9
mov dword [esp], edx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x3f3
je 0x40b5cb
jbe 0x40b310
cmp edi, 0x3f4
jne 0x40b2e2
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sym.unk_43
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov eax, dword [eax*4 + 0x41a710]
mov dword [esp + 4], eax
mov eax, dword [0x41a728]
mov dword [esp], eax
call sym.unk_40
jmp 0x408bde
cmp edi, 0x57a
jbe 0x40aca0
cmp edi, 0x640
je 0x40bb16
jbe 0x40aad0
cmp edi, 0x643
je 0x40b8d4
jbe 0x40aa81
cmp edi, 0x7dd
je 0x40bae7
cmp edi, 0x7de
jne 0x40aa52
shr ebx, 0x10
cmp ebx, 9
jne 0x409169
mov eax, dword [ebp + 0x14]
lea edx, [ebp - 0x220]
mov ecx, 0x100
call sym.unk_71
mov eax, dword [ebp + 0x14]
lea edx, [ebp - 0x220]
call sym.unk_98
jmp 0x408bde
cmp edi, 0x3ec
jne 0x40aa5e
call sym.unk_96
jmp 0x408bde
cmp edi, 0x644
je 0x40b965
mov eax, dword [ebp + 0x14]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x111
mov dword [esp + 0xc], eax
mov dword [esp], edx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x641
jne 0x40ad10
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
mov edi, dword [ebp + 8]
push ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], sym.unk_104
mov dword [esp + 8], edi
mov dword [esp + 4], 0x836
mov dword [esp], eax
call sub.user32.dll_DialogBoxParamW
sub esp, 0x14
jmp 0x408bde
cmp edi, 0x5dd
je 0x40b65b
ja 0x40adf0
cmp edi, 0x57b
jne 0x40adb0
mov dword [ebp - 0x330], eax
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x7d4
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
push ecx
push ecx
mov dword [esp + 4], 0x7d3
mov dword [esp], eax
call sub.user32.dll_GetDlgItem
push ebx
push ebx
mov ebx, eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x57b
mov dword [esp + 4], 0x419
mov dword [esp], eax
call sym.unk_169
lea ecx, [ebp - 0x294]
sub esp, 0x10
mov dword [esp + 0xc], ecx
mov dword [esp], ebx
mov dword [esp + 8], eax
mov dword [esp + 4], 0x41d
call sym.unk_169
mov eax, dword [ebp - 0x294]
sub esp, 0x10
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp - 0x288]
mov dword [esp], ebx
mov dword [ebp - 0x2ec], eax
lea eax, [ebp - 0x2f0]
mov dword [esp + 4], eax
call sub.user32.dll_ClientToScreen
mov eax, dword [0x41a71c]
push edi
push edi
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.user32.dll_GetSubMenu
mov ecx, dword [ebp - 0x2ec]
mov edi, dword [ebp + 8]
push edx
push edx
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x2f0]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x180
mov dword [esp], eax
call sub.user32.dll_TrackPopupMenu
mov edx, dword [ebp - 0x330]
lea ebx, [eax - 0x708]
sub esp, 0x1c
mov dword [ebp - 0x32c], eax
cmp ebx, 0x10
ja 0x408bde
xor eax, eax
mov ecx, 0x1c
lea edi, [ebp - 0x21c]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x220]
mov dword [esp], edx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0x43a
mov dword [ebp - 0x220], 0x74
call sym.unk_169
mov edx, dword [ebp - 0x330]
mov dword [ebp - 0x21c], 0x40000000
sub esp, 0x10
cmp dword [ebp - 0x32c], 0x718
je 0x40be78
mov eax, dword [ebx*4 + 0x411900]
and dword [ebp - 0x218], 0xbfffffff
mov dword [ebp - 0x20c], eax
lea eax, [ebp - 0x220]
mov dword [esp + 8], 1
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x444
mov dword [esp], edx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x578
jae 0x40bce0
cmp edi, 0x51f
je 0x40bcb8
ja 0x40ad60
cmp edi, 0x51c
je 0x40b93d
jb 0x40bc90
cmp edi, 0x51d
je 0x40bb52
cmp edi, 0x51e
jne 0x40aa5e
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x301
mov dword [esp], eax
call sub.user32.dll_PostMessageW
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x642
jne 0x40aa5e
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
mov edi, dword [ebp + 8]
push edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], sym.unk_103
mov dword [esp + 8], edi
mov dword [esp + 4], 0x837
mov dword [esp], eax
call sub.user32.dll_DialogBoxParamW
sub esp, 0x14
jmp 0x408bde
cmp edi, 0x528
ja 0x40b0c0
cmp edi, 0x522
jae 0x40b767
cmp edi, 0x520
jne 0x40b084
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x302
mov dword [esp], eax
call sub.user32.dll_PostMessageW
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x5dc
jne 0x40aa5e
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov edx, dword [eax*4 + 0x41a708]
mov eax, 2
shr edx, 2
xor edx, 1
and edx, 1
call sym.unk_67
call sym.unk_83
jmp 0x408bde
cmp edi, 0x5de
jne 0x40aeb3
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov eax, dword [eax*4 + 0x41a708]
shr eax, 1
xor eax, 1
and eax, 1
call sym.unk_65
call sym.unk_83
jmp 0x408bde
cmp edi, 0x514
jne 0x40aef0
lea eax, [ebp - 0x220]
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x437
mov dword [esp], edx
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0xffffffff
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x44e
ja 0x40b050
cmp edi, 0x44c
jae 0x40b890
cmp edi, 0x3f7
jne 0x40b030
mov eax, 0x419080
call sym.unk_99
jmp 0x408bde
cmp edi, 0x5df
jne 0x40aa5e
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov edx, dword [eax*4 + 0x41a708]
xor eax, eax
not edx
and edx, 1
call sym.unk_67
call sym.unk_83
jmp 0x408bde
cmp edi, 0x515
jne 0x40aa5e
lea eax, [ebp - 0x294]
mov dword [esp], edx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x434
mov dword [ebp - 0x32c], edx
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x290], 0xffffffff
call sym.unk_169
mov eax, dword [ebp - 0x290]
sub eax, dword [ebp - 0x294]
add eax, 1
sub esp, 0x10
add eax, eax
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov ebx, dword fs:[0x18]
mov eax, dword [ebx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sub.kernel32.dll_HeapAlloc
mov edx, dword [ebp - 0x32c]
sub esp, 0xc
mov edi, eax
mov dword [esp], edx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x43e
call sym.unk_169
mov eax, dword [ebp - 0x290]
lea edx, [ebp - 0x220]
sub esp, 0x10
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x294]
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [esp + 4], str.Start___d__End___d
call sym._sprintf
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x220]
mov dword [esp + 0xc], 0
mov dword [esp + 8], str.Editor
mov dword [esp + 4], edx
mov dword [esp], eax
call sym.unk_194
mov eax, dword [ebp + 8]
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x411978
mov dword [esp + 4], edi
mov dword [esp], eax
call sym.unk_175
sub esp, 0x10
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword [ebx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sub.kernel32.dll_HeapFree
sub esp, 0xc
jmp 0x408bde
cmp edi, 0x3f8
jne 0x40aa5e
mov eax, 1
call sym.unk_93
jmp 0x408bde
cmp edi, 0x4b0
jne 0x40aa5e
mov dword [esp + 0xc], 0
mov dword [esp + 8], 1
mov dword [esp + 4], 0x443
mov dword [esp], eax
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x521
jne 0x40aa5e
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x303
mov dword [esp], eax
call sub.user32.dll_PostMessageW
sub esp, 0x10
jmp 0x408bde
cmp edi, 0x532
jne 0x40aa5e
mov eax, dword [0x41a728]
lea ebx, [ebp - 0x220]
mov dword [esp], eax
call sub.user32.dll_GetDC
lea edx, [ebp - 0x2e8]
mov edi, edx
mov edx, dword [0x41a728]
push ecx
mov ecx, 0xd
mov dword [ebp - 0x32c], eax
xor eax, eax
rep stosd dword es:[edi], eax
mov dword [ebp - 0x2ec], edx
lea edx, [ebp - 0x294]
mov ecx, 0x1c
mov dword [ebp - 0x2e4], edx
lea edx, [ebp - 0x21c]
mov dword [ebp - 0x2f0], 0x3c
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [0x41a724]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 1
mov dword [esp + 4], 0x43a
mov dword [esp], eax
mov dword [ebp - 0x2dc], 0x1800141
mov dword [ebp - 0x220], 0x74
call sym.unk_169
mov ecx, dword [ebp - 0x2e4]
xor eax, eax
sub esp, 0x10
movzx edx, word [ebp + eax - 0x206]
mov word [ecx + eax + 0x1c], dx
add eax, 2
test dx, dx
jne 0x40b168
mov eax, dword [ebp - 0x218]
mov edx, dword [ebp - 0x2e4]
mov ecx, eax
shr ecx, 1
and ecx, 1
mov byte [edx + 0x14], cl
mov ecx, eax
and ecx, 1
cmp ecx, 1
sbb ecx, ecx
and ecx, 0xfffffed4
add ecx, 0x2bc
mov dword [edx + 0x10], ecx
mov ecx, eax
shr eax, 3
and eax, 1
shr ecx, 2
mov byte [edx + 0x16], al
mov eax, dword [ebp - 0x32c]
and ecx, 1
mov byte [edx + 0x15], cl
mov dword [esp + 4], 0x5a
mov dword [esp], eax
call sub.gdi32.dll_GetDeviceCaps
mov ecx, 0x14
push edi
push edi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x214]
mov dword [esp + 8], 0x48
cdq
idiv ecx
mov dword [esp], eax
call sub.kernel32.dll_MulDiv
mov edx, dword [ebp - 0x2e4]
neg eax
sub esp, 0xc
mov dword [edx], eax
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x2d8], eax
lea eax, [ebp - 0x2f0]
mov dword [esp], eax
call sub.comdlg32.dll_ChooseFontW
push edx
test eax, eax
je 0x408bde
lea edx, [ebp - 0x218]
xor eax, eax
mov ecx, 0x1b
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x2e0]
mov dword [ebp - 0x220], 0x74
mov dword [ebp - 0x21c], 0xc000000f
add eax, eax
mov dword [ebp - 0x214], eax
movzx eax, word [ebp - 0x2c0]
test ah, 1
je 0x40b273
mov dword [ebp - 0x218], 1
test ah, 2
je 0x40b27f
or dword [ebp - 0x218], 2
mov eax, dword [ebp - 0x2e4]
cmp byte [eax + 0x15], 0
je 0x40b292
or dword [ebp - 0x218], 4
cmp byte [eax + 0x16], 0
je 0x40b29f
or dword [ebp - 0x218], 8
mov eax, dword [ebp - 0x2d8]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 1
mov dword [ebp - 0x20c], eax
mov eax, dword [0x41a724]
mov dword [esp + 4], 0x444
mov dword [esp], eax
call sym.unk_169
mov eax, dword [ebp - 0x2e4]
sub esp, 0x10
add eax, 0x1c
call sym.unk_74
jmp 0x408bde
cmp edi, 0x3f5
jne 0x40aa5e
mov eax, dword [0x41a728]
mov dword [esp + 4], 0x41a500
mov dword [esp], eax
call sym.unk_45
jmp 0x40a98e
cmp edi, 0x3f2
jne 0x40aa5e
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0x41a500
mov dword [esp], eax
call sym.unk_46
jmp 0x40a98e
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xfffffd3a
jne 0x409169
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sub.user32.dll_GetMenu
sub esp, 4
test eax, eax
je 0x409169
lea edx, [ebp - 0x220]
mov dword [esp + 8], 0
mov dword [esp + 0xc], edx
mov dword [esp + 4], 0x52d
mov dword [esp], eax
mov dword [ebp - 0x220], 0x30
mov dword [ebp - 0x21c], 4
call sym.unk_179
mov ecx, dword [ebp - 0x20c]
sub esp, 0x10
test ecx, ecx
je 0x409169
mov eax, dword [ebp + 0x14]
lea ebx, [ebp - 0x2f0]
xor esi, esi
mov dword [esp + 0xc], ebx
mov eax, dword [eax + 0xc]
mov dword [esp + 4], 0x433
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
mov dword [esp], eax
call sym.unk_169
mov eax, dword [ebp + 0x14]
sub esp, 0x10
mov dword [esp + 0xc], 2
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov eax, dword [eax]
mov dword [esp], eax
call sym.unk_158
mov edx, dword [ebp - 0x2ec]
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x294]
mov eax, dword [ebp - 0x2f0]
sub esp, 0x10
mov dword [ebp - 0x294], 0x14
mov dword [ebp - 0x28c], edx
mov edx, dword [ebp - 0x2e8]
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x288], edx
mov edx, dword [ebp - 0x2e4]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x20c]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], edx
mov dword [esp + 4], 0x40
mov dword [esp], eax
mov dword [ebp - 0x284], edx
call sub.user32.dll_TrackPopupMenuEx
sub esp, 0x18
jmp 0x408bde
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xfffffcda
jne 0x409169
mov eax, dword [ebp + 0x14]
xor esi, esi
add eax, 0x14
call sym.unk_75
jmp 0x408bde
mov dword [esp + 8], 0
mov dword [esp + 4], 0x44d
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
mov edx, dword [ebp - 0x32c]
sub esp, 0xc
cmp edx, 2
jne 0x40a69b
mov edx, 8
jmp 0x408e29
mov eax, dword [ebp + 8]
mov ecx, 0x30
mov edx, 0x6a7
call sym.unk_94
mov dword [esp], 1
call sub.user32.dll_PostQuitMessage
sub esp, 4
jmp 0x4099f5
mov dword [esp + 8], 8
mov dword [esp + 4], 0x44c
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [esp + 4], 0x44d
mov dword [esp], ebx
call sub.user32.dll_CheckMenuItem
xor edx, edx
sub esp, 0xc
jmp 0x408e29
mov esi, 2
jmp 0x409c16
mov eax, 2
jmp 0x409d31
mov esi, 2
jmp 0x409cd2
mov esi, 2
jmp 0x409c74
mov esi, 0xffffffff
jmp 0x408bde
cmp word [0x41a500], 0
je 0x40aa48
mov edx, dword [0x4102a4]
mov eax, 0x41a500
call sym.unk_92
jmp 0x408bde
xor eax, eax
mov ecx, 0x1c
lea edi, [ebp - 0x21c]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x220]
mov dword [esp + 4], 0x43a
mov dword [esp + 0xc], eax
xor eax, eax
cmp bx, 0x518
sete al
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [ebp - 0x220], 0x74
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov ebx, eax
mov edi, dword [eax*4 + 0x41a708]
mov dword [eax*4 + 0x41a708], 2
call sym.unk_84
mov eax, dword [0x41a724]
mov dword [esp + 4], 0
mov dword [ebx*4 + 0x41a708], edi
mov dword [esp], eax
call sym.unk_155
mov eax, dword [ebp + 8]
push ecx
push ecx
mov dword [esp], eax
mov dword [esp + 4], 0x41a500
call sym.unk_47
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.user32.dll_SetMenu
push ebx
push ebx
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp], 0
call sub.user32.dll_InvalidateRect
sub esp, 0xc
jmp 0x408bde
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov edx, dword [eax*4 + 0x41a708]
mov eax, 4
shr edx, 3
xor edx, 1
and edx, 1
call sym.unk_67
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov edx, dword [eax*4 + 0x41a708]
mov eax, 5
shr edx, 3
xor edx, 1
and edx, 1
call sym.unk_67
mov eax, dword [0x4102a4]
mov dword [esp], eax
call sym.unk_60
mov edx, dword [eax*4 + 0x41a708]
mov eax, 3
shr edx, 3
xor edx, 1
and edx, 1
call sym.unk_67
call sym.unk_83
jmp 0x408bde
mov dword [esp + 0xc], 0xc0ffff
mov dword [esp + 8], 0
mov dword [esp + 4], 0x443
mov dword [esp], eax
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sub.user32.dll_GetMenu
lea edx, [ebp - 0x220]
mov dword [ebp - 0x220], 0x30
push ebx
mov dword [ebp - 0x21c], 0x20
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], eax
call sym.unk_179
sub esp, 0x10
test eax, eax
je 0x408bde
mov eax, dword [ebp - 0x200]
call sym.unk_95
jmp 0x408bde
xor eax, eax
call sym.unk_93
jmp 0x408bde
lea ecx, [ebp - 0x220]
mov dword [esp], eax
lea edi, [ebx - 0x522]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x43d
mov dword [ebp - 0x220], 0xbc
mov dword [ebp - 0x21c], 0x20
mov dword [ebp - 0x32c], eax
call sym.unk_169
movzx eax, word [ebp - 0x218]
mov dword [ebp - 0x21c], 0x8000e024
lea ecx, [ebp - 0x220]
sub esp, 0x10
mov edx, dword [ebp - 0x32c]
test ax, ax
je 0x40bd9e
cmp bx, 0x522
je 0x40be27
cmp di, ax
je 0x40be27
mov dword [ebp - 0x214], 0
mov word [ebp - 0x218], di
movzx edi, di
mov dword [0x4102a0], edi
mov dword [ebp - 0x170], 0x2000001
mov word [ebp - 0x16c], 0x168
mov dword [ebp - 0x20c], 0x168
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x447
mov dword [esp], edx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov dword [esp + 4], 0xfffffff0
mov dword [esp], eax
mov dword [ebp - 0x32c], eax
call sub.user32.dll_GetWindowLongW
mov edx, dword [ebp - 0x32c]
push edi
test ah, 8
push edi
mov dword [esp + 0xc], 0
je 0x40bd7c
mov dword [esp + 8], 0
mov dword [esp + 4], 0xcf
mov dword [esp], edx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov dword [ebp - 0x220], 0xbc
mov dword [ebp - 0x21c], 8
cmp edi, 0x44d
je 0x40be6a
cmp edi, 0x44e
je 0x40be5c
mov word [ebp - 0x208], 1
lea eax, [ebp - 0x220]
mov dword [esp + 0xc], eax
jmp 0x40b821
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
push edi
mov dword [esp + 0x14], 0x8000
mov dword [esp + 0x10], 0x30
mov dword [esp + 0xc], 0x30
mov dword [esp + 8], 1
mov dword [esp + 4], 0x66
mov dword [esp], eax
call sub.user32.dll_LoadImageW
sub esp, 0x18
mov dword [esp + 0xc], eax
mov eax, dword [0x41a728]
mov dword [esp + 8], 0
mov dword [esp + 4], 0x411978
mov dword [esp], eax
call sub.shell32.dll_ShellAboutW
sub esp, 0x10
jmp 0x408bde
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x454
mov dword [esp], eax
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
mov dword [ebp - 0x220], 0x38
push ecx
mov ebx, eax
mov dword [ebp - 0x21c], 8
mov dword [ebp - 0x214], 0x838
mov dword [esp], 1
mov dword [ebp - 0x208], sym.unk_81
mov dword [ebp - 0x218], eax
call sym.unk_60
mov dword [esp], 2
mov dword [ebp - 0x204], eax
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x200], 0
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x20c], 0x599
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x218]
mov dword [ebp - 0x1e0], eax
call sym.unk_60
mov dword [ebp - 0x288], ebx
mov dword [ebp - 0x1cc], eax
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x1d4], 0x59a
mov dword [ebp - 0x1c8], eax
mov eax, dword [0x41a728]
mov dword [ebp - 0x294], 0x34
mov dword [ebp - 0x28c], eax
lea eax, [ebp - 0x220]
mov dword [ebp - 0x274], eax
mov eax, dword [0x4102a4]
mov dword [ebp - 0x290], 0x8c
mov dword [ebp - 0x280], 0x598
shr eax, 1
mov dword [ebp - 0x27c], 2
and eax, 1
mov dword [ebp - 0x278], eax
lea eax, [ebp - 0x294]
mov dword [esp], eax
mov dword [ebp - 0x284], 0x66
call sub.comctl32.dll_PropertySheetW
push ebx
call sym.unk_84
jmp 0x40a98e
xor eax, eax
mov ecx, 0x2e
lea edi, [ebp - 0x21c]
rep stosd dword es:[edi], eax
lea ebx, [ebp - 0x220]
mov dword [esp + 8], 0
mov dword [esp + 0xc], ebx
mov dword [esp + 4], 0x43d
mov dword [esp], edx
mov dword [ebp - 0x220], 0xbc
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
shr ebx, 0x10
cmp ebx, 9
jne 0x409169
mov eax, dword [ebp + 0x14]
mov ecx, 0x20
lea edx, [ebp - 0x220]
call sym.unk_71
lea eax, [ebp - 0x220]
call sym.unk_75
jmp 0x408bde
mov dword [esp], 0
call sub.kernel32.dll_GetModuleHandleW
mov edi, dword [ebp + 8]
push ebx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], sym.unk_79
mov dword [esp + 8], edi
mov dword [esp + 4], 0x834
mov dword [esp], eax
call sub.user32.dll_DialogBoxParamW
sub esp, 0x14
jmp 0x408bde
mov dword [esp], eax
mov dword [ebp - 0x338], eax
mov ebx, dword fs:[0x18]
call sub.user32.dll_GetWindowTextLengthW
push edx
lea ecx, [eax + 1]
lea edi, [ecx + ecx]
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x334], ecx
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0x330], edi
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sub.kernel32.dll_HeapAlloc
mov ecx, dword [ebp - 0x334]
mov edx, dword [ebp - 0x338]
sub esp, 0xc
mov edi, eax
mov dword [esp + 8], ecx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [ebp - 0x334], edx
call sub.user32.dll_GetWindowTextW
sub esp, 0xc
mov dword [esp + 4], edi
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x411978
mov dword [esp], 0
call sym.unk_175
sub esp, 0x10
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword [ebx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sub.kernel32.dll_HeapFree
mov edi, dword [ebp - 0x330]
sub esp, 0xc
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword [ebx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sub.kernel32.dll_HeapAlloc
mov edx, dword [ebp - 0x334]
mov dword [ebp - 0x220], 0
mov edi, eax
mov eax, dword [ebp - 0x32c]
sub esp, 0xc
mov dword [esp + 8], 0
mov dword [ebp - 0x21c], eax
lea eax, [ebp - 0x220]
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x44b
mov dword [esp], edx
mov dword [ebp - 0x218], edi
call sym.unk_169
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x411978
mov dword [esp + 4], edi
mov dword [esp], 0
jmp 0x40b003
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0xc7
mov dword [esp], eax
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x300
mov dword [esp], eax
call sub.user32.dll_PostMessageW
sub esp, 0x10
jmp 0x408bde
xor eax, eax
mov ecx, 0x1c
lea edi, [ebp - 0x21c]
mov dword [ebp - 0x32c], edx
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x220]
mov dword [esp], edx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0x43a
mov dword [ebp - 0x220], 0x74
call sym.unk_169
mov edx, dword [ebp - 0x32c]
sub esp, 0x10
cmp bx, 0x579
je 0x40bdff
cmp bx, 0x57a
je 0x40be13
mov dword [ebp - 0x21c], 1
mov eax, 1
xor dword [ebp - 0x218], eax
jmp 0x40ac72
mov dword [esp + 8], 1
xor esi, esi
mov dword [esp + 4], 0xb9
mov dword [esp], edx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov dword [esp + 8], 1
xor esi, esi
mov dword [esp + 4], 0xcf
mov dword [esp], edx
call sym.unk_169
sub esp, 0x10
jmp 0x408bde
mov dword [ebp - 0x214], 0x168
cmp bx, 0x522
jne 0x40b7f0
mov eax, dword [0x4102a0]
mov word [ebp - 0x218], ax
jmp 0x40b800
mov eax, 1
jmp 0x40a7a0
mov eax, dword fs:[0x18]
mov ebx, dword [eax + 0x34]
mov dword [esp], 2
or esi, 0xffffffff
call sym.unk_116
mov dword [esp + 8], ebx
mov dword [esp + 4], str.Error_code__u_n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x408bde
mov dword [ebp - 0x21c], 2
mov eax, 2
jmp 0x40bd4f
mov dword [ebp - 0x21c], 4
mov eax, 4
jmp 0x40bd4f
mov word [ebp - 0x218], 0
mov dword [ebp - 0x170], 0
mov word [ebp - 0x16c], 0
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x214], 0xfffffe98
jmp 0x40b81d
mov word [ebp - 0x208], 2
jmp 0x40b8c5
mov word [ebp - 0x208], 3
jmp 0x40b8c5
or dword [ebp - 0x218], 0x40000000
jmp 0x40ac72