Function at 0x401920
Capabilities:
Open clipboard
Read clipboard data
Write clipboard data

Disassembly:
mov eax, 0x142a4
call fcn.00402688
mov eax, 0
mov byte [ebp - 1], al
mov eax, 0
mov dword [ebp - 8], eax
mov eax, 0xfffffff5
push eax
call sub.kernel32.dll_GetStdHandle
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x1e]
push eax
mov eax, dword [ebp - 0x24]
push eax
call sub.kernel32.dll_GetConsoleScreenBufferInfo
cmp eax, 0
je 0x401966
movzx eax, word [ebp - 0x16]
mov word [ebp - 0x20], ax
call fcn.004011d6
mov dword [ebp - 0x28], eax
call fcn.00401208
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x28]
cmp eax, 0x36
jl 0x401993
mov eax, dword [ebp - 0x2c]
cmp eax, 6
jl 0x401993
jmp 0x4019ba
mov eax, 0x10
push eax
mov eax, str.Newtrodit
push eax
mov eax, str.Console_window_is_too_small._Please_resize_it.
push eax
mov eax, 0
push eax
call sub.user32.dll_MessageBoxA
mov eax, 0
jmp 0x402686
mov eax, dword [ebp + 8]
cmp eax, 1
jle 0x401a10
mov eax, dword [ebp + 0xc]
add eax, 4
mov ecx, str.__help
push ecx
mov ecx, dword [eax]
push ecx
call sub.msvcrt.dll_strcmp
add esp, 8
cmp eax, 0
je 0x4019eb
jmp 0x401a10
call fcn.0040123a
call sub.msvcrt.dll__getch
movzx eax, word [ebp - 0x20]
push eax
call fcn.0040104e
add esp, 4
mov eax, 0
push eax
call sub.msvcrt.dll_exit
add esp, 4
mov eax, dword [ebp + 8]
cmp eax, 2
jne 0x401af0
mov eax, dword [ebp + 0xc]
add eax, 4
mov ecx, 0x4052db
push ecx
mov ecx, dword [eax]
push ecx
call sub.msvcrt.dll_fopen
add esp, 8
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
cmp eax, 0
je 0x401a47
jmp 0x401a83
mov eax, dword [ebp + 0xc]
add eax, 4
mov dword [ebp - 0x34], eax
call sub.msvcrt.dll__errno
mov ecx, dword [eax]
push ecx
call sub.msvcrt.dll_strerror
add esp, 4
push eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
push eax
mov eax, str.arg:__s:__s
push eax
call sub.msvcrt.dll_printf
add esp, 0xc
mov eax, 1
push eax
call sub.msvcrt.dll_exit
add esp, 4
mov eax, 1
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, dword [ebp + 0xc]
add eax, 4
mov ecx, dword [eax]
push ecx
mov eax, str.Untitled
push eax
call sub.msvcrt.dll_strcpy
add esp, 8
mov eax, dword [ebp - 0x30]
push eax
call sub.msvcrt.dll_getc
add esp, 4
mov dword [ebp - 0x38], eax
cmp eax, 0xffffffff
je 0x401ad4
mov eax, dword [ebp - 0x38]
push eax
call sub.msvcrt.dll_putchar
add esp, 4
jmp 0x401aae
call sub.msvcrt.dll__getch
movzx eax, word [ebp - 0x20]
push eax
call fcn.0040104e
add esp, 4
mov eax, 0
jmp 0x402686
mov eax, 1
mov dword [ebp - 0x3c], eax
call fcn.004010be
mov eax, 0
mov dword [ebp - 0x4258], eax
mov eax, 1
mov dword [ebp - 0x425c], eax
mov eax, 7
push eax
call fcn.0040104e
add esp, 4
call fcn.00401732
mov eax, str.Untitled
push eax
call fcn.004014c6
add esp, 4
call fcn.0040153a
call fcn.004016e5
mov eax, 0x14
push eax
mov eax, 1
push eax
call fcn.004016ff
add esp, 8
mov eax, dword [ebp - 0x425c]
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401000
add esp, 8
mov eax, 0
mov dword [ebp - 0x14260], eax
mov eax, 7
push eax
call fcn.0040104e
add esp, 4
call fcn.00401208
mov dword [ebp - 0x2040], eax
mov eax, dword [ebp - 0x2040]
dec eax
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, 0
mov dword [ebp - 0x1426c], eax
mov eax, dword [ebp - 0x1426c]
cmp eax, 0x11
jge 0x401be0
jmp 0x401bd0
mov eax, dword [ebp - 0x1426c]
inc eax
mov dword [ebp - 0x1426c], eax
jmp 0x401bad
mov eax, 0x20
push eax
call sub.msvcrt.dll_putchar
add esp, 4
jmp 0x401bc1
mov eax, dword [ebp - 0x2040]
dec eax
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, dword [ebp - 0x4258]
inc eax
push eax
mov eax, dword [ebp - 0x425c]
push eax
mov eax, str.Ln__d__Col__d
push eax
call sub.msvcrt.dll_printf
add esp, 0xc
mov eax, dword [ebp - 0x425c]
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401000
add esp, 8
call sub.msvcrt.dll__getch
mov dword [ebp - 0x14268], eax
mov eax, dword [ebp - 0x14260]
mov ecx, eax
inc eax
mov dword [ebp - 0x14260], eax
lea eax, [ebp - 0x1425c]
add eax, ecx
movsx ecx, byte [ebp - 0x14268]
mov byte [eax], cl
mov eax, dword [ebp - 0x14268]
cmp eax, 8
jne 0x401c9e
mov eax, dword [ebp - 0x4258]
cmp eax, 0
jle 0x401c99
mov eax, dword [ebp - 0x4258]
mov ecx, eax
add eax, 0xffffffff
mov dword [ebp - 0x4258], eax
mov eax, dword [ebp - 0x14260]
mov ecx, eax
add eax, 0xffffffff
mov dword [ebp - 0x14260], eax
jmp 0x401c9e
call fcn.004010a4
mov eax, dword [ebp - 0x14268]
cmp eax, 0xf
jne 0x401e9b
mov eax, dword [ebp - 0x2c]
dec eax
push eax
mov eax, 1
push eax
call fcn.00401000
add esp, 8
mov eax, 0x70
push eax
call fcn.0040104e
add esp, 4
mov eax, str.File_to_open:
push eax
mov eax, 0x4052f7
push eax
call sub.msvcrt.dll_printf
add esp, 8
mov eax, dword [sym.imp.msvcrt.dll__iob]
push eax
mov eax, 0x200
push eax
lea eax, [ebp - 0x2254]
push eax
call sub.msvcrt.dll_fgets
add esp, 0xc
mov eax, 0x4052fa
push eax
lea eax, [ebp - 0x2254]
push eax
call sub.msvcrt.dll_fopen
add esp, 8
mov dword [ebp - 0x14270], eax
mov eax, dword [ebp - 0x14270]
cmp eax, 0
je 0x401d2d
jmp 0x401d90
mov eax, dword [ebp - 0x2c]
dec eax
push eax
mov eax, 1
push eax
call fcn.00401000
add esp, 8
call sub.msvcrt.dll__errno
mov ecx, dword [eax]
push ecx
call sub.msvcrt.dll_strerror
add esp, 4
push eax
lea eax, [ebp - 0x2254]
push eax
mov eax, 0x4052fc
push eax
call sub.msvcrt.dll_printf
add esp, 0xc
call sub.msvcrt.dll__getch
call fcn.0040153a
mov eax, dword [ebp - 0x425c]
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401000
add esp, 8
call fcn.004016e5
jmp 0x401d9e
mov eax, str.fopen_succeeded_n
push eax
call sub.msvcrt.dll_printf
add esp, 4
lea eax, [ebp - 0x2254]
push eax
mov eax, str.Untitled
push eax
call sub.msvcrt.dll_strcpy
add esp, 8
mov eax, str.Untitled
push eax
call fcn.004014c6
add esp, 4
call fcn.004016e5
mov eax, str.yeee
push eax
call sub.msvcrt.dll_printf
add esp, 4
mov eax, 0
mov dword [ebp - 0x4258], eax
mov eax, 1
mov dword [ebp - 0x425c], eax
mov eax, dword [ebp - 0x425c]
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401000
add esp, 8
mov eax, dword [ebp - 0x14270]
push eax
call sub.msvcrt.dll_getc
add esp, 4
mov dword [ebp - 0x14264], eax
mov eax, dword [ebp - 0x14264]
push eax
call sub.msvcrt.dll_putchar
add esp, 4
mov eax, dword [ebp - 0x14270]
push eax
call sub.msvcrt.dll_getc
add esp, 4
mov dword [ebp - 0x14264], eax
cmp eax, 0xffffffff
je 0x401e9b
mov eax, str.yunm
push eax
call sub.msvcrt.dll_puts
add esp, 4
mov eax, dword [ebp - 0x14264]
cmp eax, 0xd
jne 0x401e8a
mov eax, 0xd
push eax
call sub.msvcrt.dll_putchar
add esp, 4
mov eax, dword [ebp - 0x425c]
inc eax
mov dword [ebp - 0x425c], eax
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401000
add esp, 8
mov eax, dword [ebp - 0x14264]
push eax
call sub.msvcrt.dll_putchar
add esp, 4
jmp 0x401e24
mov eax, dword [ebp - 0x14268]
cmp eax, 3
jne 0x401f33
lea eax, [ebp - 0x1425c]
push eax
call sub.msvcrt.dll_strlen
add esp, 4
inc eax
mov dword [ebp - 0x14274], eax
mov eax, dword [ebp - 0x14274]
push eax
mov eax, 2
push eax
call sub.kernel32.dll_GlobalAlloc
mov dword [ebp - 0x14278], eax
mov eax, dword [ebp - 0x14278]
push eax
call sub.kernel32.dll_GlobalLock
mov ecx, dword [ebp - 0x14274]
push ecx
lea ecx, [ebp - 0x1425c]
push ecx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x14278]
push eax
call sub.kernel32.dll_GlobalUnlock
mov eax, 0
push eax
call sub.user32.dll_OpenClipboard
call sub.user32.dll_EmptyClipboard
mov eax, dword [ebp - 0x14278]
push eax
mov eax, 1
push eax
call sub.user32.dll_SetClipboardData
call sub.user32.dll_CloseClipboard
jmp 0x401b81
mov eax, dword [ebp - 0x14268]
cmp eax, 0x13
jne 0x401f42
mov eax, dword [ebp - 0x14268]
cmp eax, 8
jne 0x401f74
mov eax, dword [ebp - 0x4258]
push eax
call fcn.004017c6
add esp, 4
mov dword [ebp - 0x4258], eax
mov eax, 0x20
push eax
call sub.msvcrt.dll_putchar
add esp, 4
mov eax, dword [ebp - 0x14268]
cmp eax, 7
jne 0x4020af
call fcn.004011d6
mov dword [ebp - 0x1427c], eax
call fcn.00401208
dec eax
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, 0
mov dword [ebp - 0x14280], eax
mov eax, dword [ebp - 0x1427c]
dec eax
mov ecx, dword [ebp - 0x14280]
cmp ecx, eax
jge 0x401fe7
jmp 0x401fd7
mov eax, dword [ebp - 0x14280]
inc eax
mov dword [ebp - 0x14280], eax
jmp 0x401fae
mov eax, 0x20
push eax
call sub.msvcrt.dll_putchar
add esp, 4
jmp 0x401fc8
call fcn.00401208
dec eax
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, str.Line_number:
push eax
mov eax, 0x40531e
push eax
call sub.msvcrt.dll_printf
add esp, 8
lea eax, [ebp - 0x14284]
push eax
mov eax, 0x405321
push eax
call sub.msvcrt.dll_scanf
add esp, 8
call fcn.00401208
mov ecx, dword [ebp - 0x14284]
cmp ecx, eax
jge 0x402061
call fcn.00401208
dec eax
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, str.Console_buffer_arrived_to_limit.
push eax
mov eax, 0x405325
push eax
call sub.msvcrt.dll_printf
add esp, 8
mov eax, dword [ebp - 0x14284]
mov dword [ebp - 0x425c], eax
mov eax, dword [ebp - 0x425c]
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, dword [ebp - 0x425c]
push eax
mov eax, dword [ebp - 0x4258]
push eax
mov eax, str._d:_d
push eax
call sub.msvcrt.dll_printf
add esp, 0xc
mov eax, dword [ebp - 0x14284]
mov dword [ebp - 0x425c], eax
call fcn.0040153a
mov eax, dword [ebp - 0x14268]
cmp eax, 0xe0
jne 0x4021b2
call sub.msvcrt.dll__getch
mov dword [ebp - 0x14268], eax
jmp 0x402180
mov eax, dword [ebp - 0x425c]
cmp eax, 1
jle 0x4020ff
mov eax, dword [ebp - 0x425c]
add eax, 0xffffffff
mov dword [ebp - 0x425c], eax
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401000
add esp, 8
jmp 0x4021a2
mov eax, dword [ebp - 0x4258]
cmp eax, 1
jl 0x402132
mov eax, dword [ebp - 0x4258]
add eax, 0xffffffff
mov dword [ebp - 0x4258], eax
mov ecx, dword [ebp - 0x425c]
push ecx
push eax
call fcn.00401000
add esp, 8
jmp 0x4021a2
mov eax, dword [ebp - 0x4258]
inc eax
mov dword [ebp - 0x4258], eax
mov ecx, dword [ebp - 0x425c]
push ecx
push eax
call fcn.00401000
add esp, 8
jmp 0x4021a2
mov eax, dword [ebp - 0x425c]
inc eax
mov dword [ebp - 0x425c], eax
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401000
add esp, 8
jmp 0x4021a2
mov eax, dword [ebp - 0x14268]
cmp eax, 0x48
je 0x4020d1
cmp eax, 0x4b
je 0x402104
cmp eax, 0x4d
je 0x402137
cmp eax, 0x50
je 0x402159
jmp 0x401b81
mov eax, dword [ebp - 0x14268]
cmp eax, 0xd
jne 0x402227
mov eax, 0
mov dword [ebp - 0x14260], eax
mov eax, 0
mov dword [ebp - 0x4258], eax
mov eax, dword [ebp - 0x425c]
mov ecx, eax
inc eax
mov dword [ebp - 0x425c], eax
lea eax, [ebp - 1]
add eax, ecx
mov ecx, dword [ebp - 0x4258]
add eax, ecx
mov ecx, 0xa
mov byte [eax], cl
mov eax, 0x40532e
push eax
call sub.msvcrt.dll_printf
add esp, 4
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x425c]
cmp eax, ecx
jge 0x402222
mov eax, dword [ebp - 0x3c]
mov ecx, eax
inc eax
mov dword [ebp - 0x3c], eax
jmp 0x401b81
mov eax, dword [ebp - 0x14268]
cmp eax, 6
jne 0x40232c
call fcn.00401208
push eax
mov eax, 1
push eax
call fcn.00401000
add esp, 8
mov eax, str.String_to_find:
push eax
mov eax, 0x405330
push eax
call sub.msvcrt.dll_printf
add esp, 8
mov eax, dword [sym.imp.msvcrt.dll__iob]
push eax
mov eax, 0x2000
push eax
lea eax, [ebp - 0x4254]
push eax
call sub.msvcrt.dll_fgets
add esp, 0xc
lea eax, [ebp - 0x4254]
push eax
lea eax, [ebp - 0x1425c]
push eax
call sub.msvcrt.dll_strstr
add esp, 8
cmp eax, 0
je 0x40232c
lea eax, [ebp - 0x4254]
push eax
lea eax, [ebp - 0x1425c]
push eax
call sub.msvcrt.dll_strstr
add esp, 8
mov dword [ebp - 0x2048], eax
mov eax, dword [ebp - 0x2048]
lea ecx, [ebp - 0x1425c]
sub eax, ecx
mov dword [ebp - 0x204c], eax
lea eax, [ebp - 0x1425c]
push eax
call sub.msvcrt.dll_strlen
add esp, 4
mov ecx, dword [ebp - 0x204c]
sub eax, ecx
mov dword [ebp - 0x2050], eax
mov eax, dword [ebp - 0x425c]
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, 2
push eax
mov eax, dword [ebp - 0x204c]
push eax
call fcn.00401000
add esp, 8
mov eax, 0xe
push eax
call fcn.0040104e
add esp, 4
mov eax, str.yellow
push eax
call sub.msvcrt.dll_printf
add esp, 4
mov eax, dword [ebp - 0x14268]
cmp eax, 0x18
jne 0x40235f
mov eax, dword [ebp - 0x425c]
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401845
add esp, 8
mov eax, 7
push eax
call fcn.0040104e
add esp, 4
mov eax, dword [ebp - 0x14268]
cmp eax, 0
jne 0x4023c5
call sub.msvcrt.dll__getch
mov dword [ebp - 0x14268], eax
mov eax, dword [ebp - 0x14268]
cmp eax, 0x6b
jne 0x4023ac
mov eax, dword [ebp - 0x425c]
push eax
mov eax, dword [ebp - 0x4258]
push eax
call fcn.00401845
add esp, 8
mov eax, 7
push eax
call fcn.0040104e
add esp, 4
mov eax, dword [ebp - 0x14268]
cmp eax, 0x3b
jne 0x4023c5
call fcn.0040123a
call sub.msvcrt.dll__getch
mov eax, dword [ebp - 0x14268]
cmp eax, 0x13
jne 0x4025e7
call fcn.00401208
mov dword [ebp - 0x2044], eax
mov eax, dword [ebp - 0x2044]
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, 0
mov dword [ebp - 0x14288], eax
mov eax, dword [ebp - 0x14288]
mov ecx, dword [ebp - 0x2044]
cmp eax, ecx
jge 0x402437
jmp 0x402427
mov eax, dword [ebp - 0x14288]
inc eax
mov dword [ebp - 0x14288], eax
jmp 0x4023ff
mov eax, 0x20
push eax
call sub.msvcrt.dll_putchar
add esp, 4
jmp 0x402418
mov eax, dword [ebp - 0x2044]
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, str.File_to_save:
push eax
mov eax, 0x40533a
push eax
call sub.msvcrt.dll_printf
add esp, 8
mov eax, dword [sym.imp.msvcrt.dll__iob]
push eax
mov eax, 0x2000
push eax
lea eax, [ebp - 0x203c]
push eax
call sub.msvcrt.dll_fgets
add esp, 0xc
lea eax, [ebp - 0x203c]
push eax
call sub.msvcrt.dll_strlen
add esp, 4
mov dword [ebp - 0x1428c], eax
mov eax, dword [ebp - 0x1428c]
dec eax
lea ecx, [ebp - 0x203c]
add ecx, eax
mov eax, 0
mov byte [ecx], al
mov eax, 0x40533d
push eax
lea eax, [ebp - 0x203c]
push eax
call sub.msvcrt.dll_fopen
add esp, 8
mov dword [ebp - 0x14290], eax
mov eax, dword [ebp - 0x14290]
cmp eax, 0
je 0x4024d6
jmp 0x40256e
mov eax, dword [ebp - 0x2044]
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
mov eax, 0
mov dword [ebp - 0x14294], eax
mov eax, dword [ebp - 0x14294]
mov ecx, dword [ebp - 0x2044]
cmp eax, ecx
jge 0x40252e
jmp 0x40251e
mov eax, dword [ebp - 0x14294]
inc eax
mov dword [ebp - 0x14294], eax
jmp 0x4024f6
mov eax, 0x20
push eax
call sub.msvcrt.dll_putchar
add esp, 4
jmp 0x40250f
mov eax, dword [ebp - 0x2044]
push eax
mov eax, 0
push eax
call fcn.00401000
add esp, 8
call sub.msvcrt.dll__errno
mov ecx, dword [eax]
push ecx
call sub.msvcrt.dll_strerror
add esp, 4
push eax
lea eax, [ebp - 0x203c]
push eax
mov eax, str._s:__s
push eax
call sub.msvcrt.dll_printf
add esp, 0xc
jmp 0x401b81
mov eax, 0
mov dword [ebp - 0x14298], eax
mov eax, 1
mov dword [ebp - 0x1429c], eax
call fcn.004010be
mov eax, 0
mov dword [ebp - 0x142a0], eax
mov eax, dword [ebp - 0x142a0]
mov ecx, dword [ebp - 0x425c]
cmp eax, ecx
jge 0x4025d8
jmp 0x4025bc
mov eax, dword [ebp - 0x142a0]
inc eax
mov dword [ebp - 0x142a0], eax
jmp 0x402594
mov eax, dword [ebp - 0x142a0]
lea ecx, [ebp - 1]
add ecx, eax
push ecx
mov eax, str.CHAR:___s__n
push eax
call sub.msvcrt.dll_printf
add esp, 8
jmp 0x4025ad
mov eax, dword [ebp - 0x14290]
push eax
call sub.msvcrt.dll_fclose
add esp, 4
mov eax, dword [ebp - 0x14268]
cmp eax, 0x16
jne 0x402635
mov eax, 0
push eax
call sub.user32.dll_OpenClipboard
cmp eax, 0
je 0x402630
mov eax, 1
push eax
call sub.user32.dll_GetClipboardData
mov dword [ebp - 0x142a4], eax
mov eax, dword [ebp - 0x142a4]
push eax
mov eax, 0x405352
push eax
call sub.msvcrt.dll_printf
add esp, 8
call sub.user32.dll_CloseClipboard
mov eax, dword [ebp - 0x4258]
mov ecx, eax
inc eax
mov dword [ebp - 0x4258], eax
mov eax, dword [ebp - 0x425c]
lea ecx, [ebp - 1]
add ecx, eax
mov eax, dword [ebp - 0x4258]
add ecx, eax
movsx eax, byte [ebp - 0x14268]
mov byte [ecx], al
mov eax, dword [ebp - 0x14268]
push eax
call sub.msvcrt.dll_putchar
add esp, 4
jmp 0x401b81
leave
ret