Function at 0x40566b
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xca8
mov eax, dword [ebp + 0xc]
push ebx
push esi
sub eax, 5
push edi
je 0x407755
sub eax, 0xb
je 0x405705
sub eax, 0x3e
je 0x407477
sub eax, 0xc2
je 0x407160
dec eax
je 0x4056d4
sub eax, 0xf1
jne case.0x405796.1018
call dword [sym.imp.USER32.dll_ReleaseCapture]
xor ebx, ebx
cmp dword [0x444f74], ebx
je case.0x405796.1018
push ebx
push 1
push 0x111
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x405796.1018
push 0xffffffffffffffeb
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetWindowLongA]
push 1
pop esi
cmp eax, esi
jne case.0x405796.1018
mov edi, dword [ebp + 0x10]
mov eax, 0x3f7
movzx ecx, di
cmp ecx, eax
jg 0x405778
je 0x405757
dec ecx
je 0x405715
dec ecx
jne case.0x405796.1018
push 0
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_EndDialog]
jmp case.0x405796.1018
xor ebx, ebx
cmp dword [0x444f70], ebx
je 0x405734
cmp dword [0x444f74], ebx
jne 0x405734
push dword [ebp + 8]
call fcn.00409783
test eax, eax
pop ecx
je 0x40574b
cmp byte [0x453020], bl
je 0x40574b
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_EndDialog]
jmp case.0x405796.1018
push ebx
call dword [sym.imp.USER32.dll_MessageBeep]
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x1ff
push 0x453020
push eax
push dword [ebp + 8]
jmp 0x407155
lea eax, [ecx - 0x3f9]
cmp eax, 0x107
ja case.0x405796.1018
mov ebx, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
movzx eax, byte [eax + 0x4078d7]
jmp dword [eax*4 + 0x40776b]
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x4057b1
cmp di, 5
jne case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 0x3fe
push dword [ebp + 8]
call edi
push 0x3fc
mov dword [ebp + 0x10], eax
push dword [ebp + 8]
call edi
push 0x3fd
mov esi, eax
push dword [ebp + 8]
call edi
cmp dword [ebp + 0x10], ebx
push 3
pop edi
je 0x4057e6
mov eax, edi
jmp 0x4057f6
cmp esi, ebx
je 0x4057ef
push 1
pop eax
jmp 0x4057f6
neg eax
sbb eax, eax
and eax, 2
mov ecx, dword [0x453220]
cmp eax, edi
mov dword [0x453224], eax
mov edx, 0x201
jne 0x40580f
cmp ecx, 0x16
jne 0x40582a
cmp eax, 1
jne 0x405819
cmp ecx, 0x17
jne 0x40582a
cmp eax, 2
jne case.0x405796.1018
cmp ecx, edx
je case.0x405796.1018
cmp dword [ebp + 0x10], ebx
je 0x40583b
mov dword [0x453220], 0x16
jmp 0x40584c
neg esi
sbb esi, esi
and si, 0xfe16
add esi, edx
mov dword [0x453220], esi
push ebx
push dword [0x453220]
push 0x3f9
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetDlgItemInt]
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
lea eax, [ebp - 0x140]
push 0x1f
mov edi, 0x3f9
push eax
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
cmp dword [0x441dbc], esi
jle 0x4058a7
movsx eax, byte [ebp - 0x140]
push 4
push eax
call fcn.00429090
pop ecx
pop ecx
jmp 0x4058ba
movsx eax, byte [ebp - 0x140]
mov ecx, dword [str.________________________________H]
mov al, byte [ecx + eax*2]
and eax, 4
xor ebx, ebx
cmp eax, ebx
je 0x4058cb
push 0x453220
push edi
jmp 0x406382
lea eax, [ebp - 0x140]
push ebx
push eax
call sub.WSOCK32.dll_getservbyname
cmp eax, ebx
je 0x4058f3
mov ax, word [eax + 8]
push eax
call sub.WSOCK32.dll_ntohs
movzx eax, ax
mov dword [0x453220], eax
jmp case.0x405796.1018
mov dword [0x453220], ebx
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
xor ebx, ebx
push ebx
push 0xffffffffffffffff
push 0x186
push 0x401
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push 0x7ff
push 0x444fa0
push 0x400
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
mov byte [0x44579f], bl
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x40595b
cmp di, 5
jne case.0x405796.1018
lea eax, [ebp - 0xca8]
push 0x7ff
push eax
push 0x400
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
cmp byte [ebp - 0xca8], bl
mov edi, dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov esi, 0x401
jne 0x4059b5
push ebx
push ebx
push 0x188
push esi
push dword [ebp + 8]
call edi
cmp eax, 0xffffffff
je 0x406ca7
mov ecx, dword [0x4554a4]
push dword [ecx + eax*4]
lea eax, [ebp - 0xca8]
push eax
call fcn.00429370
pop ecx
pop ecx
push 0x453020
lea eax, [ebp - 0xca8]
push str.Default_Settings
push eax
call fcn.004292e0
neg eax
pop ecx
sbb eax, eax
pop ecx
neg eax
push eax
lea eax, [ebp - 0xca8]
push eax
call fcn.00412b68
add esp, 0xc
push ebx
call fcn.00413ec1
pop ecx
push 1
call fcn.00413ec1
pop ecx
push ebx
push ebx
push 0xb
push esi
push dword [ebp + 8]
call edi
push ebx
push ebx
push 0x184
push esi
push dword [ebp + 8]
call edi
cmp dword [0x452ee0], ebx
mov dword [ebp + 0x10], ebx
jle 0x405a39
mov eax, dword [0x4554a4]
mov ecx, dword [ebp + 0x10]
push dword [eax + ecx*4]
push ebx
push 0x180
push esi
push dword [ebp + 8]
call edi
inc dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
cmp eax, dword [0x452ee0]
jl 0x405a14
push ebx
push 0xffffffffffffffff
push 0x186
push esi
push dword [ebp + 8]
call edi
push ebx
push 1
push 0xb
push esi
push dword [ebp + 8]
call edi
push 1
push ebx
push esi
jmp 0x406e1f
mov esi, 0x401
xor ebx, ebx
cmp di, si
jne 0x405a8a
mov eax, edi
shr eax, 0x10
cmp ax, 4
jne 0x405a7e
mov dword [0x444f70], 1
jmp 0x405a8a
cmp ax, 5
jne 0x405a8a
mov dword [0x444f70], ebx
cmp di, 0x402
jne 0x405aa5
mov eax, edi
shr eax, 0x10
cmp ax, bx
je 0x405aa5
cmp ax, 5
jne case.0x405796.1018
cmp di, si
jne 0x405ab9
mov eax, edi
shr eax, 0x10
cmp ax, 2
jne case.0x405796.1018
push dword [ebp + 8]
call fcn.00409783
test eax, eax
pop ecx
je case.0x405796.1018
cmp di, si
jne case.0x405796.1018
cmp byte [0x453020], bl
je case.0x405796.1018
push dword [ebp + 8]
mov dword [0x444f74], 1
call dword [sym.imp.USER32.dll_SetCapture]
jmp case.0x405796.1018
mov eax, edi
xor ebx, ebx
shr eax, 0x10
cmp ax, bx
je 0x405b0d
cmp ax, 5
jne case.0x405796.1175
push ebx
push ebx
mov esi, 0x401
push 0x188
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
cmp eax, 0xffffffff
je 0x406ca7
cmp eax, ebx
je 0x406ca7
mov ecx, dword [0x4554a4]
push dword [ecx + eax*4]
call fcn.0041245a
pop ecx
push ebx
call fcn.00413ec1
pop ecx
push 1
call fcn.00413ec1
pop ecx
push ebx
push ebx
push 0xb
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push ebx
push ebx
push 0x184
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
cmp dword [0x452ee0], ebx
mov dword [ebp + 0x10], ebx
jle 0x405ba5
mov eax, dword [0x4554a4]
mov ecx, dword [ebp + 0x10]
push dword [eax + ecx*4]
push ebx
push 0x180
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
inc dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
cmp eax, dword [0x452ee0]
jl 0x405b7c
push ebx
push 0xffffffffffffffff
push 0x186
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push ebx
push 1
push 0xb
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push 1
push ebx
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x453230
push 0x497
jmp 0x406382
shr edi, 0x10
test di, di
je 0x405c09
cmp di, 5
jne case.0x405796.1018
push 0x420
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539e4], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405c33
cmp di, 5
jne case.0x405796.1018
push 0x423
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539e8], eax
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x405c5f
cmp di, 5
jne case.0x405796.1018
sub ecx, 0x425
je 0x405cc1
dec ecx
je 0x405cb6
dec ecx
je 0x405ca7
dec ecx
je 0x405c98
dec ecx
je 0x405c89
dec ecx
jne case.0x405796.1018
mov dword [0x4539ec], 5
jmp case.0x405796.1018
mov dword [0x4539ec], 4
jmp case.0x405796.1018
mov dword [0x4539ec], 3
jmp case.0x405796.1018
mov dword [0x4539ec], 2
jmp case.0x405796.1018
mov dword [0x4539ec], esi
jmp case.0x405796.1018
mov dword [0x4539ec], ebx
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x405ce0
cmp di, 5
jne case.0x405796.1018
push 0x42d
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539fc], eax
mov dword [0x453a00], ebx
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x405d12
cmp di, 5
jne case.0x405796.1018
mov dword [0x4539fc], ebx
mov dword [0x453a00], esi
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405d35
cmp di, 5
jne case.0x405796.1018
push 0x433
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539f8], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405d5f
cmp di, 5
jne case.0x405796.1018
push 0x430
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539f0], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405d89
cmp di, 5
jne case.0x405796.1018
push 0x42f
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539f4], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405db3
cmp di, 5
jne case.0x405796.1018
push 0x473
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a08], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405ddd
cmp di, 5
jne case.0x405796.1018
push 0x474
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a0c], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405e07
cmp di, 5
jne case.0x405796.1018
push 0x475
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a10], eax
jmp case.0x405796.1018
mov eax, edi
xor ebx, ebx
shr eax, 0x10
cmp ax, bx
je 0x405e35
cmp ax, 5
jne case.0x405796.1018
cmp di, 0x444
jne 0x405e46
mov dword [0x453a14], 2
cmp di, 0x445
jne 0x405e53
mov dword [0x453a14], ebx
cmp di, 0x446
jne case.0x405796.1018
mov dword [0x453a14], esi
jmp case.0x405796.1018
mov eax, edi
xor ebx, ebx
shr eax, 0x10
cmp ax, bx
je 0x405e7f
cmp ax, 5
jne case.0x405796.1018
cmp di, 0x448
jne 0x405e90
mov dword [0x453a18], 2
cmp di, 0x449
jne 0x405e9d
mov dword [0x453a18], ebx
cmp di, 0x44a
jne case.0x405796.1018
mov dword [0x453a18], esi
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0xff
push 0x453de0
push 0x442
jmp 0x407152
shr edi, 0x10
test di, di
je 0x405ee7
cmp di, 5
jne case.0x405796.1018
push 0x478
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a1c], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405f11
cmp di, 5
jne case.0x405796.1018
push 0x476
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a20], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405f3b
cmp di, 5
jne case.0x405796.1018
push 0x477
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a24], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405f65
cmp di, 5
jne case.0x405796.1018
push 0x434
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a28], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405f8f
cmp di, 5
jne case.0x405796.1018
push 0x435
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a2c], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405fb9
cmp di, 5
jne case.0x405796.1018
push 0x436
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453a04], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x405fe3
cmp di, 5
jne case.0x405796.1018
push 0x43c
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453b38], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x40600d
cmp di, 5
jne case.0x405796.1018
push 0x43d
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453b34], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406037
cmp di, 5
jne case.0x405796.1018
push 0x43e
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453b3c], eax
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x453c7c
push 0x46b
jmp 0x406382
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x453c78
push 0x46d
jmp 0x406382
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x453b30
push 0x472
jmp 0x406382
xor ebx, ebx
push ebx
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push 0x48
push 0x5a
push esi
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push eax
push dword [0x453cc4]
call dword [sym.imp.KERNEL32.dll_MulDiv]
neg eax
push esi
push ebx
mov dword [ebp - 0xac], eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [0x453cc0]
mov esi, 0x2bc
neg eax
sbb eax, eax
mov edi, 0x453c80
and eax, esi
push 0x1f
mov dword [ebp - 0x9c], eax
mov al, byte [0x453cc8]
mov byte [ebp - 0x95], al
lea eax, [ebp - 0x90]
push edi
push eax
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0xa4], ebx
mov dword [ebp - 0xa8], ebx
mov byte [ebp - 0x96], bl
mov byte [ebp - 0x97], bl
mov byte [ebp - 0x98], bl
mov byte [ebp - 0x94], bl
mov byte [ebp - 0x93], bl
mov byte [ebp - 0x92], bl
mov byte [ebp - 0x91], 1
call fcn.004287f0
mov eax, dword [ebp + 8]
add esp, 0xc
mov dword [ebp - 0x1a0], eax
lea eax, [ebp - 0xac]
mov dword [ebp - 0x198], eax
lea eax, [ebp - 0x1a4]
push eax
mov byte [ebp - 0x71], bl
mov dword [ebp - 0x1a4], 0x3c
mov dword [ebp - 0x190], 0x14041
call sub.comdlg32.dll_ChooseFontA
test eax, eax
je case.0x405796.1018
lea eax, [ebp - 0x90]
push 0x3f
push eax
push edi
call fcn.004287f0
add esp, 0xc
xor eax, eax
cmp dword [ebp - 0x9c], esi
mov byte [0x453cbf], bl
push 0xa
sete al
mov dword [0x453cc0], eax
pop ecx
movzx eax, byte [ebp - 0x95]
mov dword [0x453cc8], eax
mov eax, dword [ebp - 0x194]
cdq
idiv ecx
mov dword [0x453cc4], eax
lea eax, [ebp - 0x4a8]
push eax
call fcn.00407a3c
pop ecx
lea eax, [ebp - 0x4a8]
push eax
push 0x486
jmp 0x407092
mov eax, edi
xor ebx, ebx
shr eax, 0x10
cmp ax, bx
je 0x406207
cmp ax, 5
jne case.0x405796.1018
cmp di, 0x451
jne 0x406214
mov dword [0x453b48], ebx
cmp di, 0x452
jne 0x406221
mov dword [0x453b48], esi
cmp di, 0x453
jne 0x406232
mov dword [0x453b48], 3
cmp di, 0x454
jne case.0x405796.1018
mov dword [0x453b48], 2
jmp case.0x405796.1018
mov eax, edi
xor ebx, ebx
shr eax, 0x10
cmp ax, bx
je 0x406262
cmp ax, 5
jne case.0x405796.1018
cmp di, 0x459
jne 0x40626f
mov dword [0x453b4c], ebx
cmp di, 0x45a
jne 0x40627c
mov dword [0x453b4c], esi
cmp di, 0x45b
jne case.0x405796.1018
mov dword [0x453b4c], 2
jmp case.0x405796.1018
push 0x4c
xor ebx, ebx
pop edi
lea eax, [ebp - 0x70]
push edi
push ebx
push eax
call fcn.00428790
mov eax, dword [ebp + 8]
add esp, 0xc
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x2a8]
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x54], eax
mov edi, 0x453b60
lea eax, [ebp - 0x2a8]
push edi
push eax
mov dword [ebp - 0x64], str.Wave_Files
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x58], esi
call fcn.00429370
pop ecx
lea eax, [ebp - 0x70]
pop ecx
mov dword [ebp - 0x50], 0x104
push eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], str.Select_Bell_Sound_File
mov dword [ebp - 0x3c], ebx
call sub.comdlg32.dll_GetOpenFileNameA
test eax, eax
je case.0x405796.1018
lea eax, [ebp - 0x2a8]
push eax
push edi
call fcn.00429370
pop ecx
pop ecx
push edi
push 0x456
jmp 0x407092
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x103
push 0x453b60
push 0x456
jmp 0x407152
shr edi, 0x10
test di, di
je 0x406352
cmp di, 5
jne case.0x405796.1018
push 0x45c
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453b50], eax
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x453b54
push 0x45e
push dword [ebp + 8]
call fcn.004079df
add esp, 0xc
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x3e8
push 0x453b58
push 0x460
jmp 0x4063ce
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x3e8
push 0x453b5c
push 0x463
push dword [ebp + 8]
call fcn.00407a01
add esp, 0x10
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x4063f0
cmp di, 5
jne case.0x405796.1018
push 0x440
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453c70], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x40641a
cmp di, 5
jne case.0x405796.1018
push 0x43f
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453c6c], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406444
cmp di, 5
jne case.0x405796.1018
push 0x48a
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453c74], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x40646e
cmp di, 5
jne case.0x405796.1018
push 0x48b
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453dd8], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406498
cmp di, 5
jne case.0x405796.1018
push 0x48c
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453ddc], eax
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x4064c4
cmp di, 5
jne case.0x405796.1018
mov dword [0x453b40], ebx
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x4064e1
cmp di, 5
jne case.0x405796.1018
mov dword [0x453b40], esi
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x4064fe
cmp di, 5
jne case.0x405796.1018
mov dword [0x453b40], 2
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x40651f
cmp di, 5
jne case.0x405796.1018
push 0x485
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453b44], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406549
cmp di, 5
jne case.0x405796.1018
push 0x46f
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453c64], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406573
cmp di, 5
jne case.0x405796.1018
push 0x46e
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453c68], eax
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0xff
push 0x453a30
push 0x489
jmp 0x407152
shr edi, 0x10
test di, di
je 0x4065bf
cmp di, 5
jne case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 0x406
push dword [ebp + 8]
call edi
test eax, eax
je 0x4065e2
mov dword [0x453228], 2
jmp case.0x405796.1018
push 0x407
push dword [ebp + 8]
call edi
neg eax
sbb eax, eax
inc eax
mov dword [0x453228], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x40660d
cmp di, 5
jne case.0x405796.1018
push 0x470
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x45322c], eax
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x1f
push 0x45355c
push 0x493
jmp 0x407152
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x103
push 0x453ccc
push 0x412
jmp 0x407152
push 0x4c
xor ebx, ebx
pop edi
lea eax, [ebp - 0x70]
push edi
push ebx
push eax
call fcn.00428790
mov eax, dword [ebp + 8]
add esp, 0xc
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x2a8]
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x54], eax
mov edi, 0x453ccc
lea eax, [ebp - 0x2a8]
push edi
push eax
mov dword [ebp - 0x64], str.All_Files
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x58], esi
call fcn.00429370
pop ecx
lea eax, [ebp - 0x70]
pop ecx
mov dword [ebp - 0x50], 0x104
push eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], str.Select_session_log_file
mov dword [ebp - 0x3c], ebx
call sub.comdlg32.dll_GetSaveFileNameA
test eax, eax
je case.0x405796.1018
lea eax, [ebp - 0x2a8]
push eax
push edi
call fcn.00429370
pop ecx
pop ecx
push edi
push 0x412
jmp 0x407092
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x406702
cmp di, 5
jne case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 0x40e
push dword [ebp + 8]
call edi
test eax, eax
je 0x40671c
mov dword [0x453dd0], ebx
push 0x40f
push dword [ebp + 8]
call edi
test eax, eax
je 0x406730
mov dword [0x453dd0], esi
push 0x410
push dword [ebp + 8]
call edi
test eax, eax
je case.0x405796.1018
mov dword [0x453dd0], 2
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x406765
cmp di, 5
jne case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 0x417
push dword [ebp + 8]
call edi
test eax, eax
je 0x406780
or dword [0x453dd4], 0xffffffff
push 0x416
push dword [ebp + 8]
call edi
test eax, eax
je 0x406794
mov dword [0x453dd4], ebx
push 0x415
push dword [ebp + 8]
call edi
test eax, eax
je case.0x405796.1018
mov dword [0x453dd4], esi
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x1f
push 0x45357c
push ecx
jmp 0x407152
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x1f
push 0x45399c
push 0x495
jmp 0x407152
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x1f
push 0x4539bc
push 0x4b5
jmp 0x407152
push 0x4a9
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539dc], eax
jmp case.0x405796.1018
push 0x4ab
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x4539e0], eax
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x40684e
cmp di, 5
jne case.0x405796.1018
lea eax, [ebp - 0x8a8]
push 0x3ff
push eax
push 0x4a1
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
cmp byte [ebp - 0x8a8], bl
je 0x406ca7
lea eax, [ebp - 0x8a8]
push eax
call fcn.00428d50
lea edi, [ebp + eax - 0x8a8]
lea eax, [ebp - 0x4a9]
pop ecx
mov esi, 0x4a3
mov byte [edi], 9
inc edi
sub eax, edi
push eax
push edi
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
cmp byte [edi], bl
je 0x406ca7
cmp byte [0x45359c], bl
mov edi, 0x45359c
je 0x4068c6
cmp byte [edi], bl
je 0x4068c1
inc edi
jmp 0x4068ba
inc edi
cmp byte [edi], bl
jne 0x4068be
lea eax, [ebp - 0x8a8]
push eax
call fcn.00428d50
pop ecx
mov ecx, edi
sub ecx, 0x45359c
lea eax, [eax + ecx + 2]
cmp eax, 0x400
jae 0x406943
lea eax, [ebp - 0x8a8]
push eax
push edi
call fcn.00429370
pop ecx
lea eax, [ebp - 0x8a8]
pop ecx
push eax
call fcn.00428d50
mov byte [eax + edi + 1], bl
pop ecx
lea eax, [ebp - 0x8a8]
push eax
push ebx
push 0x180
push 0x4a4
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov edi, dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov ebx, 0x4457f0
push ebx
push 0x4a1
push dword [ebp + 8]
call edi
push ebx
push esi
push dword [ebp + 8]
call edi
jmp case.0x405796.1018
push 0x10
push str.PuTTY_Error
push str.Environment_too_big
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x406971
cmp di, 5
jne case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push ebx
push ebx
mov esi, 0x4a4
push 0x188
push esi
push dword [ebp + 8]
call edi
cmp eax, 0xffffffff
mov dword [ebp + 0x10], eax
push ebx
je 0x406ca8
push eax
push 0x182
push esi
push dword [ebp + 8]
call edi
mov eax, 0x45359c
cmp dword [ebp + 0x10], ebx
jle 0x4069bf
cmp byte [eax], bl
je case.0x405796.1018
inc eax
cmp byte [eax], bl
jne 0x4069b4
inc eax
dec dword [ebp + 0x10]
jmp 0x4069a7
cmp byte [eax], bl
mov esi, eax
je case.0x405796.1018
inc eax
cmp byte [eax], bl
jne 0x4069c9
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
je 0x4069e6
mov byte [esi], cl
mov cl, byte [eax + 1]
inc esi
inc eax
cmp cl, bl
jne 0x4069d6
mov byte [esi], cl
inc esi
jmp 0x4069ce
mov byte [esi], bl
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x4069ff
cmp di, 5
jne case.0x405796.1018
push 0x4bc
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453438], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406a29
cmp di, 5
jne case.0x405796.1018
push 0x4cd
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x45343c], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406a53
cmp di, 5
jne case.0x405796.1018
push 0x4c2
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453550], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406a7d
cmp di, 5
jne case.0x405796.1018
push 0x4ca
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453440], eax
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x406aa9
cmp di, 5
jne case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 0x4be
push dword [ebp + 8]
call edi
test eax, eax
je 0x406ac8
mov dword [0x453444], ebx
jmp case.0x405796.1018
push 0x4bf
push dword [ebp + 8]
call edi
test eax, eax
je 0x406ae1
mov dword [0x453444], esi
jmp case.0x405796.1018
push 0x4c0
push dword [ebp + 8]
call edi
test eax, eax
je 0x406afe
mov dword [0x453444], 2
jmp case.0x405796.1018
push 0x4c1
push dword [ebp + 8]
call edi
test eax, eax
je case.0x405796.1018
mov dword [0x453444], 3
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406b31
cmp di, 5
jne case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 0x4c8
push dword [ebp + 8]
call edi
test eax, eax
je 0x406b50
mov dword [0x45354c], esi
jmp case.0x405796.1018
push 0x4c9
push dword [ebp + 8]
call edi
test eax, eax
je case.0x405796.1018
mov dword [0x45354c], 2
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406b83
cmp di, 5
jne case.0x405796.1018
push 0x4c3
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453554], eax
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x103
push 0x453448
push 0x4c5
jmp 0x407152
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x1ff
push 0x453234
push 0x4cc
jmp 0x407152
push 0x4c
xor ebx, ebx
pop edi
lea eax, [ebp - 0x70]
push edi
push ebx
push eax
call fcn.00428790
mov eax, dword [ebp + 8]
add esp, 0xc
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x2a8]
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x54], eax
mov edi, 0x453448
lea eax, [ebp - 0x2a8]
push edi
push eax
mov dword [ebp - 0x64], str.All_Files
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x58], esi
call fcn.00429370
pop ecx
lea eax, [ebp - 0x70]
pop ecx
mov dword [ebp - 0x50], 0x104
push eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], str.Select_Public_Key_File
mov dword [ebp - 0x3c], ebx
call sub.comdlg32.dll_GetOpenFileNameA
test eax, eax
je case.0x405796.1018
lea eax, [ebp - 0x2a8]
push eax
push edi
call fcn.00429370
pop ecx
pop ecx
push edi
push 0x4c5
jmp 0x407092
push 0x4dc
push dword [ebp + 8]
call ebx
mov dword [0x453f30], eax
push 0x4d6
push dword [ebp + 8]
call ebx
mov dword [0x453f2c], eax
jmp case.0x405796.1018
xor ebx, ebx
lea eax, [ebp + 0x14]
push ebx
push eax
push 0x4db
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemInt]
cmp dword [ebp + 0x14], ebx
mov dword [ebp + 0xc], eax
jne 0x406cb3
push ebx
call dword [sym.imp.USER32.dll_MessageBeep]
jmp case.0x405796.1018
mov edi, dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x18], 0x453f34
mov esi, 0x4d8
push ebx
push dword [ebp + 0x10]
push 0x187
push esi
push dword [ebp + 8]
call edi
test eax, eax
je 0x406d45
mov ecx, dword [ebp + 0x18]
mov ax, word [ebp + 0xc]
push ebx
push dword [ebp + 0x10]
mov word [ecx], ax
push 0x182
push esi
push dword [ebp + 8]
call edi
cmp dword [ebp + 0x18], 0x453f76
jl 0x406d0b
cmp dword [ebp + 0x18], 0x454032
je 0x406d0b
mov eax, dword [ebp + 0x10]
jmp 0x406d0e
push 0x20
pop eax
mov ecx, dword [ebp + 0x18]
movsx ecx, word [ecx]
push ecx
push eax
push dword [ebp + 0x10]
lea eax, [ebp - 0x120]
push dword [ebp + 0x10]
push str._d_t_0x_02X__t_c_t_d
push eax
call fcn.00428720
add esp, 0x18
lea eax, [ebp - 0x120]
push eax
push dword [ebp + 0x10]
push 0x181
push esi
push dword [ebp + 8]
call edi
add dword [ebp + 0x18], 2
inc dword [ebp + 0x10]
cmp dword [ebp + 0x18], 0x454034
jl 0x406cc8
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x406d72
cmp di, 5
jne case.0x405796.1018
push 0x4e2
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov esi, dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push ebx
push ebx
mov edi, 0x4e5
push 0xb
push edi
push dword [ebp + 8]
mov dword [0x453ee4], eax
call esi
push ebx
push ebx
push 0x18b
push edi
push dword [ebp + 8]
call esi
mov ecx, dword [0x453ee4]
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx + 0xc]
cmp eax, ecx
je 0x406e10
lea ecx, [eax - 1]
cmp eax, ebx
mov dword [ebp + 0x10], ecx
jle 0x406ddb
push ebx
push dword [ebp + 0x10]
push 0x182
push edi
push dword [ebp + 8]
call esi
mov eax, dword [ebp + 0x10]
dec dword [ebp + 0x10]
test eax, eax
jg 0x406dc2
mov dword [ebp + 0x10], ebx
cmp dword [0x453ee4], ebx
jne 0x406df1
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x435110], ebx
je 0x406e06
mov eax, dword [ebp + 0x10]
push dword [eax + 0x4350b8]
push ebx
push 0x180
push edi
push dword [ebp + 8]
call esi
add dword [ebp + 0x10], 4
cmp dword [ebp + 0x10], 0x58
jl 0x406dde
push ebx
push 1
push 0xb
push edi
push dword [ebp + 8]
call esi
push 1
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x406e46
cmp di, 5
jne case.0x405796.1018
push 0x4e3
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x453ee0], eax
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 2
je 0x406e70
cmp di, si
jne case.0x405796.1018
xor ebx, ebx
push ebx
push ebx
push 0x188
push 0x4e5
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
cmp dword [0x453ee4], ebx
jne 0x406ea5
push 3
pop edi
cmp eax, edi
jge 0x406e9a
add eax, eax
jmp 0x406ea5
jne 0x406ea1
push 5
pop eax
jmp 0x406ea5
lea eax, [eax + eax - 2]
lea edi, [eax + eax*2]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemInt]
push ebx
movzx eax, byte [edi + 0x453ee8]
push eax
push 0x4e9
push dword [ebp + 8]
call esi
movzx eax, byte [edi + 0x453ee9]
push ebx
push eax
push 0x4ea
push dword [ebp + 8]
call esi
movzx eax, byte [edi + 0x453eea]
push ebx
push eax
push 0x4eb
push dword [ebp + 8]
call esi
jmp case.0x405796.1018
shr edi, 0x10
xor ebx, ebx
cmp di, bx
je 0x406f00
cmp di, 5
jne case.0x405796.1018
push ebx
push ebx
push 0x188
push 0x4e5
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
cmp dword [0x453ee4], ebx
push 3
pop edi
jne 0x406f33
cmp eax, edi
jge 0x406f28
add eax, eax
jmp 0x406f33
jne 0x406f2f
push 5
pop eax
jmp 0x406f33
lea eax, [eax + eax - 2]
mov ecx, dword [ebp + 8]
lea esi, [eax + eax*2]
mov dword [0x444f7c], ecx
mov ecx, dword [0x455284]
xor eax, eax
mov dword [0x444f80], ecx
mov ah, byte [esi + 0x453eea]
push 0x444f78
mov al, byte [esi + 0x453ee9]
mov dword [0x444f78], 0x24
movzx ecx, byte [esi + 0x453ee8]
shl eax, 8
or eax, ecx
mov dword [0x444f88], 0x4457b0
mov dword [0x444f84], eax
mov dword [0x444f8c], edi
call sub.comdlg32.dll_ChooseColorA
test eax, eax
je case.0x405796.1018
mov eax, dword [0x444f84]
mov edi, dword [sym.imp.USER32.dll_SetDlgItemInt]
mov ecx, eax
mov byte [esi + 0x453ee8], al
shr ecx, 8
shr eax, 0x10
mov byte [esi + 0x453ee9], cl
mov byte [esi + 0x453eea], al
movzx eax, byte [esi + 0x453ee8]
push ebx
push eax
push 0x4e9
push dword [ebp + 8]
call edi
movzx eax, byte [esi + 0x453ee9]
push ebx
push eax
push 0x4ea
push dword [ebp + 8]
call edi
movzx eax, byte [esi + 0x453eea]
push ebx
push eax
push 0x4eb
push dword [ebp + 8]
call edi
jmp case.0x405796.1018
mov esi, edi
mov ebx, 0x454138
shr esi, 0x10
cmp si, 0x300
mov edi, 0x4f3
jne 0x40701c
push 0x1f
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
cmp si, 0x200
jne case.0x405796.1018
push ebx
call fcn.0040fcdb
mov esi, eax
pop ecx
cmp esi, 0xffffffff
jge 0x407080
cmp esi, 0xfffffffe
jne 0x40704f
push ebx
lea eax, [ebp - 0x3a8]
push str.Unable_to_identify_character_set__s__translation_disabled.
push eax
call fcn.00428720
add esp, 0xc
cmp esi, 0xfffffffd
jne 0x407069
push ebx
lea eax, [ebp - 0x3a8]
push str.Character_set__s_is_a_DBCS__translation_is_not_available.
push eax
call fcn.00428720
add esp, 0xc
push 0x10
lea eax, [ebp - 0x3a8]
push str.PuTTY_Error
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MessageBoxA]
push esi
call fcn.0040ff21
pop ecx
push eax
push ebx
call fcn.00429370
pop ecx
pop ecx
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
jmp case.0x405796.1018
mov ebx, dword [ebp + 8]
mov edi, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 0x4f5
push ebx
call edi
test eax, eax
je 0x4070c1
and dword [0x454134], 0
jmp case.0x405796.1018
push 0x4f6
push ebx
call edi
test eax, eax
je 0x4070d8
mov dword [0x454134], esi
jmp case.0x405796.1018
push 0x4f7
push ebx
call edi
test eax, eax
je 0x4070f3
mov dword [0x454134], 2
jmp case.0x405796.1018
push 0x4f9
push ebx
call edi
neg eax
sbb eax, eax
neg eax
add eax, 3
mov dword [0x454134], eax
jmp case.0x405796.1018
shr edi, 0x10
test di, di
je 0x407120
cmp di, 5
jne case.0x405796.1018
push 0x4fe
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov dword [0x454158], eax
jmp case.0x405796.1018
shr edi, 0x10
cmp di, 0x300
jne case.0x405796.1018
push 0x7f
push 0x45415c
push 0x500
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
jmp case.0x405796.1018
xor ebx, ebx
push ebx
push 0xffffffffffffffeb
push dword [ebp + 8]
mov dword [0x444f74], ebx
call dword [sym.imp.USER32.dll_SetWindowLongA]
push 0xc9
push dword [0x455284]
call dword [sym.imp.USER32.dll_LoadIconA]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push eax
push 1
push pe_nt_image_headers32
push dword [ebp + 8]
call esi
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov edi, dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [ebp - 0xbc]
push ecx
push eax
call edi
test eax, eax
je 0x40720a
lea eax, [ebp - 0x10]
push eax
push dword [ebp + 8]
call edi
test eax, eax
je 0x40720a
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
sub ecx, eax
push 1
push ecx
mov ecx, dword [ebp - 0x10]
sub edx, ecx
push edx
mov edx, dword [ebp - 0xb0]
add eax, edx
add eax, dword [ebp - 0xb8]
sub eax, dword [ebp - 4]
cdq
sub eax, edx
sar eax, 1
push eax
mov eax, dword [ebp - 0xb4]
add eax, ecx
add eax, dword [ebp - 0xbc]
sub eax, dword [ebp - 8]
cdq
sub eax, edx
sar eax, 1
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_MoveWindow]
push 3
lea eax, [ebp - 0x10]
pop edi
mov dword [ebp - 8], 0x4e
push eax
mov dword [ebp - 0x10], edi
push dword [ebp + 8]
mov dword [ebp - 0xc], edi
mov dword [ebp - 4], 0xd
call dword [sym.imp.USER32.dll_MapDialogRect]
mov eax, dword [ebp - 4]
push ebx
push dword [0x455284]
sub eax, dword [ebp - 0xc]
push 0x3ee
push dword [ebp + 8]
push eax
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
push eax
push dword [ebp - 0xc]
push dword [ebp - 0x10]
push 0x50000000
push str.Category:
push str.STATIC
push ebx
call dword [sym.imp.USER32.dll_CreateWindowExA]
push ebx
push ebx
push 0x31
mov dword [ebp + 0x10], eax
push dword [ebp + 8]
call esi
push 1
push eax
push 0x30
push dword [ebp + 0x10]
call esi
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], edi
push eax
mov dword [ebp - 8], 0x4e
push dword [ebp + 8]
mov dword [ebp - 0xc], 0xd
mov dword [ebp - 4], 0xdb
call dword [sym.imp.USER32.dll_MapDialogRect]
mov eax, dword [ebp - 4]
push ebx
push dword [0x455284]
sub eax, dword [ebp - 0xc]
push 0x3ef
push dword [ebp + 8]
push eax
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
push eax
push dword [ebp - 0xc]
push dword [ebp - 0x10]
push 0x50010037
push 0x4457f0
push str.SysTreeView32
push 0x200
call dword [sym.imp.USER32.dll_CreateWindowExA]
push ebx
push ebx
push 0x31
mov dword [ebp + 0x10], eax
push dword [ebp + 8]
call esi
push 1
pop edi
push edi
push eax
push 0x30
push dword [ebp + 0x10]
call esi
mov eax, dword [ebp + 0x10]
push 0x10
mov dword [ebp - 0x24], eax
push ebx
lea eax, [ebp - 0x20]
push eax
call fcn.00428790
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Session
push ebx
push eax
call fcn.0040840e
add esp, 0xc
mov dword [ebp + 0x14], eax
lea eax, [ebp - 0x24]
push str.Logging
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Terminal
push ebx
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Keyboard
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Bell
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Window
push ebx
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Appearance
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Translation
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Selection
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Colours
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Connection
push ebx
push eax
call fcn.0040840e
add esp, 0xc
cmp dword [ebp + 0x18], ebx
jne 0x40742b
push 0x43b750
lea eax, [ebp - 0x24]
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push 0x43b748
push edi
push eax
call fcn.0040840e
add esp, 0xc
cmp dword [0x43f5fc], ebx
je 0x40742b
push 0x43b744
lea eax, [ebp - 0x24]
push edi
push eax
call fcn.0040840e
add esp, 0xc
lea eax, [ebp - 0x24]
push str.Tunnels
push 2
push eax
call fcn.0040840e
add esp, 0xc
push dword [ebp + 0x14]
push 9
push 0x110b
push dword [ebp + 0x10]
call esi
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3f7
push dword [ebp + 8]
call esi
cmp eax, ebx
jne 0x407458
push 0x405
push dword [ebp + 8]
call esi
push eax
call dword [sym.imp.USER32.dll_SetFocus]
push 1
push 0xffffffffffffffeb
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [0x444f70], ebx
jmp case.0x405796.1018
cmp word [ebp + 0x10], 0x3ef
jne case.0x405796.1018
mov edi, dword [ebp + 0x14]
cmp dword [edi + 8], 0xfffffe6e
jne case.0x405796.1018
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
xor ebx, ebx
push ebx
push 9
push 0x110a
push dword [edi]
call esi
mov dword [ebp - 0x164], eax
lea eax, [ebp - 0xfc]
mov dword [ebp - 0x158], eax
lea eax, [ebp - 0x168]
push eax
push ebx
push 0x110c
mov dword [ebp - 0x154], 0x40
push dword [edi]
mov dword [ebp - 0x168], 1
call esi
mov esi, dword [ebp + 8]
mov edi, 0x3f0
push edi
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp eax, ebx
je 0x4074f9
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
inc edi
cmp edi, 0x502
jl 0x4074e6
lea eax, [ebp - 0xfc]
push str.Session
push eax
call fcn.004292e0
mov edi, dword [ebp + 0x18]
pop ecx
test eax, eax
pop ecx
jne 0x40752b
push 0x3f1
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Logging
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x407551
push 0x40a
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Keyboard
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x407577
push 0x419
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Terminal
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x40759d
push 0x438
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Bell
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x4075c3
push 0x44c
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Window
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x4075e9
push 0x465
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Appearance
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x40760f
push 0x47a
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Tunnels
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x407635
push 0x4fb
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Connection
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x40765b
push 0x48e
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push 0x43b750
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x407681
push 0x499
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push 0x43b748
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x4076a7
push 0x4ae
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push 0x43b744
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x4076cd
push 0x4b7
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Selection
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x4076f3
push 0x4cf
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Colours
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x407719
push 0x4de
push edi
push esi
call fcn.00408493
add esp, 0xc
lea eax, [ebp - 0xfc]
push str.Translation
push eax
call fcn.004292e0
pop ecx
test eax, eax
pop ecx
jne 0x40773f
push 0x4ee
push edi
push esi
call fcn.00408493
add esp, 0xc
push ebx
push esi
call fcn.00407aa0
mov eax, dword [ebp + 0x14]
pop ecx
pop ecx
push dword [eax]
call dword [sym.imp.USER32.dll_SetFocus]
jmp case.0x405796.1018
cmp dword [ebp + 0x10], 2
jne case.0x405796.1018
push dword [ebp + 8]
call fcn.00405465
pop ecx
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret