Function at 0x463220
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ced08
mov eax, dword fs:[0]
push eax
mov eax, 0x2bd4
call fcn.004a0140
mov eax, dword [0x5091d4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x2b6c], esi
mov dword [ebp - 0x2b44], esi
push 0x200
lea eax, [esi + 4]
mov dword [ebp - 0x2b80], esi
push 0
push eax
mov dword [esi], vtable.KeyCodeTable.0
mov dword [ebp - 0x2b40], eax
call fcn.004a1860
push 0x17ffe8
lea ebx, [esi + 0x204]
push 0
push ebx
mov dword [ebp - 0x2b44], ebx
call fcn.004a1860
add esp, 0x18
push fcn.00402b80
push fcn.004628d0
push 0xffff
push 0x18
push ebx
mov dword [ebp - 4], 0
call fcn.004a00c4
lea ebx, [esi + 0x1801ec]
mov dword [ebp - 4], 1
mov dword [ebp - 0x2b68], ebx
mov dword [ebx], 0
push 0x24
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
call fcn.0049f7ea
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [ebx + 4], eax
lea ecx, [ebx + 0xc]
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov dword [ebx + 0x18], 7
mov dword [ebx + 0x1c], 8
mov dword [ebx], 0x3f800000
push dword [ebx + 4]
mov byte [ebp - 4], 3
push 0x10
call fcn.0040ee60
push 0x3fffc
lea eax, [esi + 0x18020c]
mov byte [ebp - 4], 4
push 0
push eax
call fcn.004a1860
add esp, 0xc
mov byte [ebp - 0x2b21], 0
lea eax, [ebp - 0x2b22]
lea ecx, [ebp - 0x2b64]
push eax
lea eax, [ebp - 0x2b21]
push eax
push 0x100
call fcn.004503a0
mov ecx, dword [ebp - 0x2b64]
push 0x100
mov byte [ebp - 4], 5
push 0
or dword [ecx + 0x1c], 0x10000
mov ecx, dword [ebp - 0x2b64]
or dword [ecx + 0x1c], 0x40000
mov ecx, dword [ebp - 0x2b64]
or dword [ecx + 0x10], 0x10000
mov ecx, dword [ebp - 0x2b64]
or dword [ecx + 0x1c], 0x100000
mov ecx, dword [ebp - 0x2b64]
or dword [ecx + 0x1c], 0x80000
mov ecx, dword [ebp - 0x2b64]
or dword [ecx], 0x4000
lea eax, [ebp - 0xa20]
push eax
call fcn.004a1860
add esp, 0xc
mov dword [ebp - 0x980], 0x11111010
lea eax, [ebp - 0x2b22]
mov word [ebp - 0x9c5], 0xf0f
lea ecx, [ebp - 0x2b54]
mov word [ebp - 0x97c], 0x1212
mov word [ebp - 0x92d], 0xe0e
push eax
lea eax, [ebp - 0x2b21]
mov byte [ebp - 0x2b21], 0
push eax
push 0x100
call fcn.004503a0
mov ecx, dword [ebp - 0x2b54]
lea eax, [ebp - 0xb20]
push 0x100
push 0
push eax
or dword [ecx], 0x10000
mov ecx, dword [ebp - 0x2b54]
or dword [ecx], 0x20000
mov ecx, dword [ebp - 0x2b54]
or dword [ecx], 0x40000
mov ecx, dword [ebp - 0x2b54]
or dword [ecx], 0x4000
mov ecx, dword [ebp - 0x2b54]
or dword [ecx], 0x8000
mov ecx, dword [ebp - 0x2b54]
or dword [ecx], 0x100000
mov ecx, dword [ebp - 0x2b54]
or dword [ecx + 0x14], 0x20000
mov ecx, dword [ebp - 0x2b54]
or dword [ecx + 0x14], 0x40000
call fcn.004a1860
movzx eax, word [0x4da234]
add esp, 0xc
mov dword [ebp - 0x920], 0
mov word [ebp - 0x920], ax
mov al, byte [0x4da236]
mov dword [ebp - 0xb12], 0xa2a05bf3
mov byte [ebp - 0xb0e], 0xa4
mov dword [ebp - 0x90c], 0xf
mov dword [ebp - 0x910], 3
mov byte [ebp - 0x91e], al
mov byte [ebp - 0x91d], 0
mov byte [ebp - 0x908], 0xe
mov dword [ebp - 0x8f0], 0xf
mov dword [ebp - 0x8f4], 4
mov dword [ebp - 0x904], 0x31656d69
mov byte [ebp - 0x900], 0
mov byte [ebp - 0x8ec], 0xf3
mov dword [ebp - 0x8d4], 0xf
mov dword [ebp - 0x8d8], 4
mov dword [ebp - 0x8e8], 0x32656d69
mov byte [ebp - 0x8e4], 0
mov byte [ebp - 0x8d0], 0xf4
movzx eax, word [0x4da238]
mov dword [ebp - 0x8cc], 0
mov word [ebp - 0x8cc], ax
mov al, byte [0x4da23a]
mov dword [ebp - 0x8b8], 0xf
mov dword [ebp - 0x8bc], 3
mov byte [ebp - 0x8ca], al
mov byte [ebp - 0x8c9], 0
mov byte [ebp - 0x8b4], 9
mov dword [ebp - 0x8b0], 0
mov eax, 0x7263
mov dword [ebp - 0x89c], 0xf
mov dword [ebp - 0x8a0], 2
mov word [ebp - 0x8b0], ax
mov byte [ebp - 0x8ae], 0
mov byte [ebp - 0x898], 0xd
mov eax, dword [str.enter]
mov dword [ebp - 0x894], eax
mov al, byte [0x4da240]
mov dword [ebp - 0x880], 0xf
mov dword [ebp - 0x884], 5
mov byte [ebp - 0x890], al
mov byte [ebp - 0x88f], 0
mov byte [ebp - 0x87c], 0xd
push 6
mov dword [ebp - 0x878], 0
lea ecx, [ebp - 0x878]
push str.return
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x868], 0
mov dword [ebp - 0x864], 0xf
mov byte [ebp - 0x878], 0
call fcn.00402f40
mov byte [ebp - 0x860], 0xd
push 0xa
mov dword [ebp - 0x85c], 0
lea ecx, [ebp - 0x85c]
push str.shcapslock
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x84c], 0
mov dword [ebp - 0x848], 0xf
mov byte [ebp - 0x85c], 0
call fcn.00402f40
mov byte [ebp - 0x844], 0x14
push 8
mov dword [ebp - 0x840], 0
lea ecx, [ebp - 0x840]
push str.capslock
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x830], 0
mov dword [ebp - 0x82c], 0xf
mov byte [ebp - 0x840], 0
call fcn.00402f40
mov byte [ebp - 0x828], 0xf0
push 4
mov dword [ebp - 0x824], 0
lea ecx, [ebp - 0x824]
push str.left
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x814], 0
mov dword [ebp - 0x810], 0xf
mov byte [ebp - 0x824], 0
call fcn.00402f40
mov byte [ebp - 0x80c], 0x25
push 5
mov dword [ebp - 0x808], 0
lea ecx, [ebp - 0x808]
push str.right
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x7f8], 0
mov dword [ebp - 0x7f4], 0xf
mov byte [ebp - 0x808], 0
call fcn.00402f40
mov byte [ebp - 0x7f0], 0x27
push 2
mov dword [ebp - 0x7ec], 0
lea ecx, [ebp - 0x7ec]
push 0x4da274
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x7dc], 0
mov dword [ebp - 0x7d8], 0xf
mov byte [ebp - 0x7ec], 0
call fcn.00402f40
mov byte [ebp - 0x7d4], 0x26
mov dword [ebp - 0x7d0], 0
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x7c0], 0
mov dword [ebp - 0x7bc], 0xf
mov byte [ebp - 0x7d0], 0
push 4
push str.down
lea ecx, [ebp - 0x7d0]
call fcn.00402f40
mov byte [ebp - 0x7b8], 0x28
push 2
mov dword [ebp - 0x7b4], 0
lea ecx, [ebp - 0x7b4]
push 0x4da278
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x7a4], 0
mov dword [ebp - 0x7a0], 0xf
mov byte [ebp - 0x7b4], 0
call fcn.00402f40
mov byte [ebp - 0x79c], 8
push 5
mov dword [ebp - 0x798], 0
lea ecx, [ebp - 0x798]
push str.shift
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x788], 0
mov dword [ebp - 0x784], 0xf
mov byte [ebp - 0x798], 0
call fcn.00402f40
mov byte [ebp - 0x780], 0x10
push 1
mov dword [ebp - 0x77c], 0
lea ecx, [ebp - 0x77c]
push 0x4da284
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x76c], 0
mov dword [ebp - 0x768], 0xf
mov byte [ebp - 0x77c], 0
call fcn.00402f40
mov byte [ebp - 0x764], 0x10
push 6
mov dword [ebp - 0x760], 0
lea ecx, [ebp - 0x760]
push str.lshift
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x750], 0
mov dword [ebp - 0x74c], 0xf
mov byte [ebp - 0x760], 0
call fcn.00402f40
mov byte [ebp - 0x748], 0xa0
push 2
mov dword [ebp - 0x744], 0
lea ecx, [ebp - 0x744]
push 0x4da290
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x734], 0
mov dword [ebp - 0x730], 0xf
mov byte [ebp - 0x744], 0
call fcn.00402f40
mov byte [ebp - 0x72c], 0xa0
push 6
mov dword [ebp - 0x728], 0
lea ecx, [ebp - 0x728]
push str.rshift
mov byte [ebp - 4], 0x18
mov dword [ebp - 0x718], 0
mov dword [ebp - 0x714], 0xf
mov byte [ebp - 0x728], 0
call fcn.00402f40
mov byte [ebp - 0x710], 0xa1
push 2
mov dword [ebp - 0x70c], 0
lea ecx, [ebp - 0x70c]
push 0x4da29c
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x6fc], 0
mov dword [ebp - 0x6f8], 0xf
mov byte [ebp - 0x70c], 0
call fcn.00402f40
mov byte [ebp - 0x6f4], 0xa1
push 4
mov dword [ebp - 0x6f0], 0
lea ecx, [ebp - 0x6f0]
push str.ctrl
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x6e0], 0
mov dword [ebp - 0x6dc], 0xf
mov byte [ebp - 0x6f0], 0
call fcn.00402f40
mov byte [ebp - 0x6d8], 0x11
push 1
mov dword [ebp - 0x6d4], 0
lea ecx, [ebp - 0x6d4]
push 0x4da2a8
mov byte [ebp - 4], 0x1b
mov dword [ebp - 0x6c4], 0
mov dword [ebp - 0x6c0], 0xf
mov byte [ebp - 0x6d4], 0
call fcn.00402f40
mov byte [ebp - 0x6bc], 0x11
push 5
mov dword [ebp - 0x6b8], 0
lea ecx, [ebp - 0x6b8]
push str.lctrl
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0x6a8], 0
mov dword [ebp - 0x6a4], 0xf
mov byte [ebp - 0x6b8], 0
call fcn.00402f40
mov byte [ebp - 0x6a0], 0xa2
push 2
mov dword [ebp - 0x69c], 0
lea ecx, [ebp - 0x69c]
push 0x4da2b4
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x68c], 0
mov dword [ebp - 0x688], 0xf
mov byte [ebp - 0x69c], 0
call fcn.00402f40
mov byte [ebp - 0x684], 0xa2
push 5
mov dword [ebp - 0x680], 0
lea ecx, [ebp - 0x680]
push str.rctrl
mov byte [ebp - 4], 0x1e
mov dword [ebp - 0x670], 0
mov dword [ebp - 0x66c], 0xf
mov byte [ebp - 0x680], 0
call fcn.00402f40
mov byte [ebp - 0x668], 0xa3
push 2
mov dword [ebp - 0x664], 0
lea ecx, [ebp - 0x664]
push 0x4da2c0
mov byte [ebp - 4], 0x1f
mov dword [ebp - 0x654], 0
mov dword [ebp - 0x650], 0xf
mov byte [ebp - 0x664], 0
call fcn.00402f40
mov byte [ebp - 0x64c], 0xa3
push 3
mov dword [ebp - 0x648], 0
lea ecx, [ebp - 0x648]
push 0x4da2c4
mov byte [ebp - 4], 0x20
mov dword [ebp - 0x638], 0
mov dword [ebp - 0x634], 0xf
mov byte [ebp - 0x648], 0
call fcn.00402f40
mov byte [ebp - 0x630], 0xf
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x62c], 0
mov dword [ebp - 0x61c], 0
push 4
push str.lwin
lea ecx, [ebp - 0x62c]
mov dword [ebp - 0x618], 0xf
mov byte [ebp - 0x62c], 0
call fcn.00402f40
mov byte [ebp - 0x614], 0x5b
push 4
mov dword [ebp - 0x610], 0
lea ecx, [ebp - 0x610]
push str.rwin
mov byte [ebp - 4], 0x22
mov dword [ebp - 0x600], 0
mov dword [ebp - 0x5fc], 0xf
mov byte [ebp - 0x610], 0
call fcn.00402f40
mov byte [ebp - 0x5f8], 0x5c
push 3
mov dword [ebp - 0x5f4], 0
lea ecx, [ebp - 0x5f4]
push 0x4da2d8
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x5e4], 0
mov dword [ebp - 0x5e0], 0xf
mov byte [ebp - 0x5f4], 0
call fcn.00402f40
mov byte [ebp - 0x5dc], 0x12
push 1
mov dword [ebp - 0x5d8], 0
lea ecx, [ebp - 0x5d8]
push 0x4da2dc
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x5c8], 0
mov dword [ebp - 0x5c4], 0xf
mov byte [ebp - 0x5d8], 0
call fcn.00402f40
mov byte [ebp - 0x5c0], 0x12
push 4
mov dword [ebp - 0x5bc], 0
lea ecx, [ebp - 0x5bc]
push str.lalt
mov byte [ebp - 4], 0x25
mov dword [ebp - 0x5ac], 0
mov dword [ebp - 0x5a8], 0xf
mov byte [ebp - 0x5bc], 0
call fcn.00402f40
mov byte [ebp - 0x5a4], 0xa4
push 2
mov dword [ebp - 0x5a0], 0
lea ecx, [ebp - 0x5a0]
push 0x4da2e8
mov byte [ebp - 4], 0x26
mov dword [ebp - 0x590], 0
mov dword [ebp - 0x58c], 0xf
mov byte [ebp - 0x5a0], 0
call fcn.00402f40
mov byte [ebp - 0x588], 0xa4
push 4
mov dword [ebp - 0x584], 0
lea ecx, [ebp - 0x584]
push str.ralt
mov byte [ebp - 4], 0x27
mov dword [ebp - 0x574], 0
mov dword [ebp - 0x570], 0xf
mov byte [ebp - 0x584], 0
call fcn.00402f40
mov byte [ebp - 0x56c], 0xa5
push 2
mov dword [ebp - 0x568], 0
mov byte [ebp - 4], 0x28
mov dword [ebp - 0x558], 0
mov dword [ebp - 0x554], 0xf
mov byte [ebp - 0x568], 0
push 0x4da2f4
lea ecx, [ebp - 0x568]
call fcn.00402f40
mov byte [ebp - 0x550], 0xa5
push 1
mov dword [ebp - 0x54c], 0
lea ecx, [ebp - 0x54c]
push 0x4d5c50
mov byte [ebp - 4], 0x29
mov dword [ebp - 0x53c], 0
mov dword [ebp - 0x538], 0xf
mov byte [ebp - 0x54c], 0
call fcn.00402f40
mov byte [ebp - 0x534], 0x12
push 2
mov dword [ebp - 0x530], 0
lea ecx, [ebp - 0x530]
push 0x4da2f8
mov byte [ebp - 4], 0x2a
mov dword [ebp - 0x520], 0
mov dword [ebp - 0x51c], 0xf
mov byte [ebp - 0x530], 0
call fcn.00402f40
mov byte [ebp - 0x518], 0xa4
push 2
mov dword [ebp - 0x514], 0
lea ecx, [ebp - 0x514]
push 0x4da2fc
mov byte [ebp - 4], 0x2b
mov dword [ebp - 0x504], 0
mov dword [ebp - 0x500], 0xf
mov byte [ebp - 0x514], 0
call fcn.00402f40
mov byte [ebp - 0x4fc], 0xa5
push 5
mov dword [ebp - 0x4f8], 0
lea ecx, [ebp - 0x4f8]
push str.nocvt
mov byte [ebp - 4], 0x2c
mov dword [ebp - 0x4e8], 0
mov dword [ebp - 0x4e4], 0xf
mov byte [ebp - 0x4f8], 0
call fcn.00402f40
mov byte [ebp - 0x4e0], 0x1d
push 3
mov dword [ebp - 0x4dc], 0
lea ecx, [ebp - 0x4dc]
push 0x4da308
mov byte [ebp - 4], 0x2d
mov dword [ebp - 0x4cc], 0
mov dword [ebp - 0x4c8], 0xf
mov byte [ebp - 0x4dc], 0
call fcn.00402f40
mov byte [ebp - 0x4c4], 0x1c
push 4
mov dword [ebp - 0x4c0], 0
lea ecx, [ebp - 0x4c0]
push str.kana
mov byte [ebp - 4], 0x2e
mov dword [ebp - 0x4b0], 0
mov dword [ebp - 0x4ac], 0xf
mov byte [ebp - 0x4c0], 0
call fcn.00402f40
mov byte [ebp - 0x4a8], 0xf2
push 5
mov dword [ebp - 0x4a4], 0
lea ecx, [ebp - 0x4a4]
push str.kanji
mov byte [ebp - 4], 0x2f
mov dword [ebp - 0x494], 0
mov dword [ebp - 0x490], 0xf
mov byte [ebp - 0x4a4], 0
call fcn.00402f40
mov byte [ebp - 0x48c], 0x19
push 3
mov dword [ebp - 0x488], 0
lea ecx, [ebp - 0x488]
push 0x4da31c
mov byte [ebp - 4], 0x30
mov dword [ebp - 0x478], 0
mov dword [ebp - 0x474], 0xf
mov byte [ebp - 0x488], 0
call fcn.00402f40
mov byte [ebp - 0x470], 0x5d
push 3
mov dword [ebp - 0x46c], 0
lea ecx, [ebp - 0x46c]
push 0x4da320
mov byte [ebp - 4], 0x31
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0xf
mov byte [ebp - 0x46c], 0
call fcn.00402f40
mov byte [ebp - 0x454], 0x1b
mov dword [ebp - 0x450], 0
lea ecx, [ebp - 0x450]
push 0x4da324
mov byte [ebp - 4], 0x32
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x43c], 0xf
mov byte [ebp - 0x450], 0
call fcn.00464eb0
mov byte [ebp - 0x438], 0x70
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x33
push eax
push 0x4da328
lea ecx, [ebp - 0x434]
mov byte [ebp - 0x2b21], 0x71
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x34
push eax
push 0x4da32c
lea ecx, [ebp - 0x418]
mov byte [ebp - 0x2b21], 0x72
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x35
push eax
push 0x4da330
lea ecx, [ebp - 0x3fc]
mov byte [ebp - 0x2b21], 0x73
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x36
push eax
push 0x4da334
lea ecx, [ebp - 0x3e0]
mov byte [ebp - 0x2b21], 0x74
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x37
push eax
push 0x4da338
lea ecx, [ebp - 0x3c4]
mov byte [ebp - 0x2b21], 0x75
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x38
push eax
push 0x4da33c
lea ecx, [ebp - 0x3a8]
mov byte [ebp - 0x2b21], 0x76
call fcn.00461f90
mov byte [ebp - 4], 0x39
lea eax, [ebp - 0x2b21]
mov byte [ebp - 0x2b21], 0x77
push eax
push 0x4da340
lea ecx, [ebp - 0x38c]
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x3a
push eax
push 0x4da344
lea ecx, [ebp - 0x370]
mov byte [ebp - 0x2b21], 0x78
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x3b
push eax
push 0x4da348
lea ecx, [ebp - 0x354]
mov byte [ebp - 0x2b21], 0x79
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x3c
push eax
push 0x4da34c
lea ecx, [ebp - 0x338]
mov byte [ebp - 0x2b21], 0x7a
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x3d
push eax
push 0x4da350
lea ecx, [ebp - 0x31c]
mov byte [ebp - 0x2b21], 0x7b
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x3e
push eax
push 0x4da354
lea ecx, [ebp - 0x300]
mov byte [ebp - 0x2b21], 0x7c
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x3f
push eax
push 0x4da358
lea ecx, [ebp - 0x2e4]
mov byte [ebp - 0x2b21], 0x7d
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x40
push eax
push 0x4da35c
lea ecx, [ebp - 0x2c8]
mov byte [ebp - 0x2b21], 0x7e
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x41
push eax
push 0x4da360
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 0x2b21], 0x7f
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x42
push eax
push 0x4da364
lea ecx, [ebp - 0x290]
mov byte [ebp - 0x2b21], 0x80
call fcn.00461f90
mov byte [ebp - 4], 0x43
mov byte [ebp - 0x2b21], 0x81
lea eax, [ebp - 0x2b21]
push eax
push 0x4da368
lea ecx, [ebp - 0x274]
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x44
push eax
push 0x4da36c
lea ecx, [ebp - 0x258]
mov byte [ebp - 0x2b21], 0x82
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x45
push eax
push 0x4da370
lea ecx, [ebp - 0x23c]
mov byte [ebp - 0x2b21], 0x83
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x46
push eax
push 0x4da374
lea ecx, [ebp - 0x220]
mov byte [ebp - 0x2b21], 0x84
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x47
push eax
push 0x4da378
lea ecx, [ebp - 0x204]
mov byte [ebp - 0x2b21], 0x85
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x48
push eax
push 0x4da37c
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 0x2b21], 0x86
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x49
push eax
push 0x4da380
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 0x2b21], 0x87
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x4a
push eax
push str.snapshot
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 0x2b21], 0x2c
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x4b
push eax
push str.scroll
lea ecx, [ebp - 0x194]
mov byte [ebp - 0x2b21], 0x91
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x4c
push eax
push str.pause
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x2b21], 0x13
call fcn.00461f90
mov byte [ebp - 4], 0x4d
lea eax, [ebp - 0x2b21]
mov byte [ebp - 0x2b21], 0x2d
push eax
push str.insert
lea ecx, [ebp - 0x15c]
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x4e
push eax
push str.home
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x2b21], 0x24
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x4f
push eax
push str.pageup
lea ecx, [ebp - 0x124]
mov byte [ebp - 0x2b21], 0x21
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x50
push eax
push 0x4da3b0
lea ecx, [ebp - 0x108]
mov byte [ebp - 0x2b21], 0x2e
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x51
push eax
push 0x4da3b4
lea ecx, [ebp - 0xec]
mov byte [ebp - 0x2b21], 0x23
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x52
push eax
push str.pagedown
lea ecx, [ebp - 0xd0]
mov byte [ebp - 0x2b21], 0x22
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x53
push eax
push str.numlock
lea ecx, [ebp - 0xb4]
mov byte [ebp - 0x2b21], 0x90
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x54
push eax
push str.backtab
lea ecx, [ebp - 0x98]
mov byte [ebp - 0x2b21], 0xf5
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x55
push eax
push str.bktab
lea ecx, [ebp - 0x7c]
mov byte [ebp - 0x2b21], 0xf5
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x56
push eax
push 0x4da3dc
lea ecx, [ebp - 0x60]
mov byte [ebp - 0x2b21], 0xb1
call fcn.00461f90
lea eax, [ebp - 0x2b21]
mov byte [ebp - 4], 0x57
mov byte [ebp - 0x2b21], 0xb2
push eax
push 0x4da3e0
lea ecx, [ebp - 0x44]
call fcn.00461f90
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x920]
push eax
push ecx
lea ecx, [ebp - 0x2be0]
call fcn.004628f0
push fcn.00402b80
push 0x52
push 0x1c
lea eax, [ebp - 0x920]
mov byte [ebp - 4], 0x5a
push eax
call fcn.0049f867
push 0x464990
push 0x462a70
push 0x100
push 0x20
lea eax, [ebp - 0x2b20]
push eax
call fcn.004a00c4
mov edi, dword [ebp - 0x2bdc]
mov byte [ebp - 4], 0x5b
mov esi, dword [edi]
cmp esi, edi
je 0x46456d
movzx eax, byte [esi + 0x20]
lea edx, [esi + 8]
shl eax, 5
lea ecx, [ebp - 0x2b20]
add ecx, eax
lea eax, [ebp - 0x2b34]
push edx
push eax
call fcn.00465300
mov eax, dword [esi]
mov esi, eax
cmp eax, edi
jne 0x464546
lea eax, [ebp - 0x2b22]
mov byte [ebp - 0x2b21], 0
push eax
lea eax, [ebp - 0x2b21]
push eax
push 0x100
lea ecx, [ebp - 0x2b7c]
call fcn.004503a0
push 1
push 0x10
lea eax, [ebp - 0x2b34]
mov byte [ebp - 4], 0x5c
push eax
lea ecx, [ebp - 0x2b7c]
call fcn.00464ac0
mov ecx, eax
call fcn.0045e2b0
push 1
push 0xa5
lea eax, [ebp - 0x2b34]
push eax
lea ecx, [ebp - 0x2b7c]
call fcn.00464ac0
mov ecx, eax
call fcn.0045e2b0
push 1
push 0xa0
lea eax, [ebp - 0x2b34]
push eax
lea ecx, [ebp - 0x2b7c]
call fcn.00464ac0
mov ecx, eax
call fcn.0045e2b0
push 1
push 0xa1
lea eax, [ebp - 0x2b34]
push eax
lea ecx, [ebp - 0x2b7c]
call fcn.00464ac0
mov ecx, eax
call fcn.0045e2b0
mov eax, 1
lea ecx, [ebp - 0x2b00]
mov ebx, eax
mov dword [ebp - 0x2b38], eax
mov dword [ebp - 0x2b2c], ebx
mov dword [ebp - 0x2b3c], ecx
movzx edi, ax
lea ecx, [ebp - 0x2b54]
movzx esi, ax
lea eax, [ebp - 0x2b88]
push ebx
push eax
mov dword [ebp - 0x2b28], edi
call fcn.00464ac0
mov ecx, eax
call fcn.00464af0
test al, al
jne 0x464673
mov eax, dword [ebp - 0x2b38]
or eax, 0x2000
movzx edi, ax
mov dword [ebp - 0x2b28], edi
movzx esi, ax
push dword [ebp - 0x2b3c]
lea ecx, [ebp - 0x2bc0]
call fcn.004629b0
cmp dword [ebp - 0x2bb8], 0
je 0x4647cb
movzx eax, si
lea ecx, [ebp - 0x2b64]
mov dword [ebp - 0x2b30], eax
lea eax, [ebp - 0x2b90]
push ebx
push eax
call fcn.00464ac0
mov ecx, eax
call fcn.00464af0
test al, al
je 0x4646cc
or esi, 0x800
movzx edi, si
mov dword [ebp - 0x2b28], edi
movzx esi, si
jmp 0x4646d2
mov esi, dword [ebp - 0x2b30]
movzx eax, si
lea ecx, [ebp - 0x2b7c]
mov dword [ebp - 0x2b30], eax
lea eax, [ebp - 0x2b98]
push ebx
push eax
call fcn.00464ac0
mov ecx, eax
call fcn.00464af0
test al, al
je 0x46470d
or esi, 0x100
movzx edi, si
mov dword [ebp - 0x2b28], edi
movzx eax, si
jmp 0x464713
mov eax, dword [ebp - 0x2b30]
cmp byte [ebp + ebx - 0xa20], 0
jne 0x46472b
or eax, 0x1000
movzx edi, ax
mov dword [ebp - 0x2b28], edi
mov eax, dword [ebp - 0x2b40]
mov dword [ebp - 0x14], 0xf
mov word [eax + ebx*2], di
xor ebx, ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x18], ebx
mov byte [ebp - 0x28], bl
mov eax, dword [ebp - 0x2bbc]
mov byte [ebp - 4], 0x5e
mov dword [ebp - 0x2b30], eax
mov esi, dword [eax]
cmp esi, eax
je 0x4647a1
nop dword [eax]
mov ecx, dword [ebp - 0x2b68]
lea eax, [ebp - 0x2b28]
push eax
lea edi, [esi + 8]
push edi
lea eax, [ebp - 0x2ba0]
push eax
call fcn.004622e0
mov eax, dword [edi + 0x10]
cmp eax, ebx
jbe 0x46478f
push edi
lea ecx, [ebp - 0x28]
mov ebx, eax
call fcn.004649a0
mov eax, dword [esi]
mov esi, eax
cmp eax, dword [ebp - 0x2b30]
jne 0x464760
mov edi, dword [ebp - 0x2b28]
mov ecx, dword [ebp - 0x2b44]
lea eax, [ebp - 0x28]
push eax
movzx eax, di
push eax
call fcn.00464ab0
mov ecx, eax
call fcn.004649a0
lea ecx, [ebp - 0x28]
call fcn.00402b80
mov ebx, dword [ebp - 0x2b2c]
jmp 0x4647de
mov ecx, dword [ebp - 0x2b40]
or esi, 0x8000
movzx eax, si
mov word [ecx + ebx*2], ax
lea ecx, [ebp - 0x2bc0]
mov byte [ebp - 4], 0x5c
call fcn.00445fe0
mov eax, dword [ebp - 0x2b38]
inc ebx
add dword [ebp - 0x2b3c], 0x20
inc eax
mov ecx, 0xff
mov dword [ebp - 0x2b38], eax
mov dword [ebp - 0x2b2c], ebx
cmp ax, cx
jb 0x464632
mov ebx, dword [ebp - 0x2b6c]
mov edx, 6
xor ecx, ecx
mov dword [ebp - 0x2b2c], 0xfe
nop dword [eax]
mov al, byte [ebp + ecx - 0xa1f]
movzx edi, word [ebx + edx]
mov esi, edi
test al, al
je 0x464851
movzx eax, al
mov ax, word [ebx + eax*2 + 4]
mov word [ebx + esi*2 + 0x18020c], ax
mov al, byte [ebp + ecx - 0xb1f]
test al, al
je 0x464866
movzx eax, al
movzx eax, word [ebx + eax*2 + 4]
jmp 0x464868
mov eax, edi
add edx, 2
mov word [ebx + esi*2 + 0x1a020a], ax
inc ecx
sub dword [ebp - 0x2b2c], 1
jne 0x464830
lea ecx, [ebp - 0x2b7c]
call fcn.00426c70
lea ecx, [ebp - 0x2b20]
call fcn.00464930
lea ecx, [ebp - 0x2be0]
call fcn.00451a80
lea ecx, [ebp - 0x2b54]
call fcn.00426c70
lea ecx, [ebp - 0x2b64]
call fcn.00426c70
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049f836
mov esp, ebp
pop ebp
ret