Function at 0x42e2b0
Capabilities:
Extract resource via kernel32 functions
Get keyboard layout

Disassembly:
push ebp
lea ebp, [esp - 0x6c]
sub esp, 0x6c
push 0xffffffffffffffff
push 0x4ba66b
mov eax, dword fs:[0]
push eax
mov eax, 0x1a6b8
mov dword fs:[0], esp
call fcn.004b9d80
push ebx
mov ebx, ecx
mov ecx, dword [ebp + 0x74]
push esi
push edi
mov dword [ebp + 0x64], ebx
test ecx, ecx
je 0x42e4fd
cmp word [ecx], 0
je 0x42e4fd
mov edi, dword [0x4e9040]
mov eax, dword [0x4e903c]
cmp edi, eax
jl 0x42e37c
cmp edi, 0xffff
jl 0x42e321
push 0x4bd2c4
push str.Too_many_includes.
mov ecx, ebx
call fcn.00449df0
jmp 0x42e4ff
test eax, eax
je 0x42e337
lea esi, [eax + eax]
cmp esi, 0xffff
jle 0x42e33c
mov esi, 0xffff
jmp 0x42e33c
mov esi, 0x64
mov ecx, dword [0x4e9038]
lea eax, [esi*4]
push eax
push ecx
call dword [sym.imp.MSVCR100.dll_realloc]
add esp, 8
test eax, eax
jne 0x42e36e
push 0x4bd2c4
push 0x4bd2fc
mov ecx, ebx
call fcn.00449df0
jmp 0x42e4ff
mov ecx, dword [ebp + 0x74]
mov dword [0x4e9038], eax
mov dword [0x4e903c], esi
mov dword [ebp + 4], edi
test edi, edi
jne 0x42e392
mov edx, dword [ebx + 0xadc]
mov eax, dword [0x4e9038]
mov dword [eax], edx
jmp 0x42e3e1
lea edx, [ebp - 0x70]
push edx
lea eax, [ebp - 0x370]
push eax
push 0x104
push ecx
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
cmp byte [ebp + 0x78], 0
jne 0x42e3e1
xor esi, esi
test edi, edi
jle 0x42e3e1
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
jmp 0x42e3c0
mov edx, dword [0x4e9038]
mov eax, dword [edx + esi*4]
lea ecx, [ebp - 0x370]
push ecx
push eax
call edi
test eax, eax
je 0x42e66e
inc esi
cmp esi, dword [ebp + 4]
jl 0x42e3c0
xor ecx, ecx
lea edx, [ebp - 0x10780]
lea eax, [ebp - 0x1a6c4]
lea esi, [ebp - 0xb8]
mov word [ebp - 0x877c], cx
mov dword [ebp + 0x68], edx
mov dword [ebp + 0x30], eax
call fcn.00403f40
xor edi, edi
lea esi, [ebp - 0x60]
mov dword [ebp - 4], edi
call fcn.004299d0
mov dword [ebp + 0x48], edi
mov dword [ebp + 0x1c], edi
mov dword [ebp + 0x20], edi
mov byte [ebp + 0x24], 0
mov dword [ebp + 0x58], edi
mov byte [ebp - 4], 2
mov eax, dword [0x4e7ebc]
cmp eax, edi
je 0x42e627
cmp dword [0x4e9040], edi
jne 0x42e627
mov edx, dword [0x4e7ee0]
cmp edx, edi
jne 0x42e498
mov ecx, dword [0x4e7ecc]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_SizeofResource]
mov dword [ebp + 0x20], eax
cmp eax, edi
je 0x42e4c0
mov edx, dword [0x4e7ebc]
mov eax, dword [0x4e7ecc]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
cmp eax, edi
je 0x42e4c0
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp + 0x1c], eax
cmp eax, edi
je 0x42e4c0
mov edx, dword [0x4e7ee0]
cmp edx, edi
je 0x42e519
mov eax, dword [0x4e7ebc]
cmp eax, edi
jne 0x42e4a0
xor ecx, ecx
jmp 0x42e4a3
mov ecx, dword [eax + 4]
mov dword [ebp + 0x20], ecx
cmp ecx, edi
je 0x42e4c0
mov ecx, dword [edx + 4]
cmp eax, edi
jne 0x42e4b5
xor eax, eax
jmp 0x42e4b9
mov eax, dword [eax]
add eax, ecx
mov dword [ebp + 0x1c], eax
cmp eax, edi
jne 0x42e519
fldz
mov ecx, dword [ebp + 0x74]
push edi
sub esp, 8
fstp qword [esp]
push ecx
push edi
push str.Could_not_extract_script_from_EXE.
call fcn.004a4470
add esp, 0x18
lea esi, [ebp + 0x58]
call fcn.00427130
lea ecx, [ebp - 0x60]
call fcn.00429a30
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.00403f90
xor eax, eax
lea esp, [ebp - 0x1a6d0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp dword [eax], 0x4034b50
jne 0x42e60a
call fcn.00403ca0
test al, al
je 0x42e4db
xor eax, eax
mov ecx, dword [eax*4 + 0x4e4b38]
lea edx, [eax + 1]
inc eax
mov word [ecx], dx
cmp eax, 0xa
jl 0x42e530
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea edx, [ebp + 0x78]
push 0x4e4b38
push edx
call fcn.004a1b60
add esp, 8
mov dword [ebp + 0x48], eax
cmp eax, edi
je 0x42e60a
mov edi, eax
lea eax, [edi + 0xa]
cmp eax, 0x400
ja 0x42e587
call fcn.004b9db0
mov esi, esp
test esi, esi
je 0x42e5a0
mov dword [esi], 0xcccc
add esi, 8
jmp 0x42e5a0
push eax
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
test eax, eax
je 0x42e59e
mov dword [eax], 0xdddd
add eax, 8
mov esi, eax
mov eax, dword [ebp + 0x78]
push edi
push eax
lea ebx, [edi + 2]
push esi
mov dword [ebp + 0x5c], ebx
mov dword [ebp + 0x58], esi
call sub.MSVCR100.dll_memcpy
xor ecx, ecx
add esp, 0xc
mov word [esi + edi], cx
test edi, edi
je 0x42e5cf
mov edx, dword [ebp + 0x78]
push edi
push ecx
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov eax, dword [ebp + 0x78]
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [ebp + 0x20], ebx
mov dword [ebp + 0x1c], esi
call fcn.00403ca0
test al, al
je 0x42e4db
mov esi, dword [0x4e7ec0]
call fcn.004258e0
mov esi, dword [0x4e7ec4]
call fcn.004258e0
mov ebx, dword [ebp + 0x64]
xor edi, edi
lea ecx, [ebp - 0x60]
push 0xc
mov eax, 0xfde9
lea edx, [ebp + 0x1c]
mov dword [ebp - 0x6c], ecx
call fcn.0049c090
mov esi, dword [ebp + 4]
jmp 0x42e761
mov eax, dword [0x4e7eec]
mov edx, dword [ebp + 0x74]
push 0x30c
lea ecx, [ebp - 0xb8]
call fcn.0049c090
test al, al
jne 0x42e6e1
cmp byte [ebp + 0x7c], al
je 0x42e678
lea esi, [ebp + 0x58]
call fcn.00427130
lea ecx, [ebp - 0x60]
call fcn.00429a30
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.00403f90
mov eax, 1
jmp 0x42e4ff
mov eax, str.Include
cmp dword [0x4e9040], edi
jg 0x42e68a
mov eax, str.Script
mov edx, dword [ebp + 0x74]
push edx
push eax
push str._s_file___s__cannot_be_opened.
mov esi, 0x204
lea edi, [ebp - 0x778]
call fcn.0049e5c0
add esp, 0xc
push 0x4bd2c4
mov eax, edi
push eax
mov ecx, ebx
call fcn.00449df0
lea esi, [ebp + 0x58]
mov edi, eax
call fcn.00427130
lea ecx, [ebp - 0x60]
call fcn.00429a30
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.00403f90
mov eax, edi
jmp 0x42e4ff
mov esi, dword [ebp + 4]
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0x6c], ecx
cmp esi, edi
jle 0x42e761
lea eax, [ebp - 0x370]
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x42e700
sub eax, edx
sar eax, 1
lea edx, [eax + eax + 2]
push edx
call dword [sym.imp.MSVCR100.dll_malloc]
mov ecx, dword [0x4e9038]
add esp, 4
mov dword [ecx + esi*4], eax
cmp eax, edi
jne 0x42e740
push 0x4bd2c4
push 0x4bd2fc
mov ecx, ebx
call fcn.00449df0
jmp 0x42e4db
lea ecx, [ebp - 0x370]
mov edx, eax
jmp 0x42e750
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, di
jne 0x42e750
inc dword [0x4e9040]
xor eax, eax
xor edx, edx
mov word [ebp - 0x10], ax
mov eax, dword [ebp - 0x6c]
push edi
lea ecx, [ebp - 0x10780]
mov byte [ebp + 0x77], 0
mov word [ebp + 2], dx
mov dword [ebx + 0x248], esi
mov dword [ebp - 0x68], edi
call fcn.00430e50
push 2
lea ecx, [ebp - 0x10780]
push 0x4d4b2c
push ecx
mov dword [ebp + 0x4c], eax
call dword [sym.imp.MSVCR100.dll_wcsncmp]
add esp, 0xc
test eax, eax
sete al
mov byte [ebp + 0x57], al
test al, al
je 0x42e7c1
xor edx, edx
mov word [ebp - 0x10780], dx
mov dword [ebp + 0x4c], edi
cmp dword [ebp + 0x4c], 0xffffffff
je 0x430916
mov eax, dword [ebp - 0x68]
mov esi, dword [ebp + 0x68]
push 0xc
inc eax
push str.CommentFlag
push esi
mov dword [ebx + 0x24c], eax
mov dword [ebx + 0x648], edi
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x42e803
push esi
mov ecx, ebx
call fcn.004310b0
test eax, eax
je 0x430985
mov byte [ebp - 0x78], 0
mov dword [ebp + 0x3c], 0
mov edi, dword [ebp + 0x30]
inc dword [ebp - 0x68]
test edi, edi
je 0x42e88d
mov esi, dword [ebp + 0x3c]
mov eax, dword [ebp - 0x6c]
push esi
mov ecx, edi
call fcn.00430e50
mov ebx, eax
mov dword [ebp + 0x40], ebx
test ebx, ebx
je 0x42e897
cmp ebx, 0xffffffff
je 0x42e897
test esi, esi
jne 0x42e897
push 2
push 0x4d4b50
push edi
call dword [sym.imp.MSVCR100.dll_wcsncmp]
add esp, 0xc
test eax, eax
jne 0x42e8ab
cmp byte [ebp + 0x57], al
jne 0x42e863
mov eax, 0x3a
cmp word [edi + 4], ax
jne 0x42e863
cmp word [edi + 6], ax
je 0x42e8bb
lea ecx, [ebx + ebx - 2]
push ecx
lea edx, [edi + 4]
push edx
push edi
mov byte [ebp + 0x57], 0
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
lea eax, [ebx - 2]
call fcn.00426820
cmp word [edi], 0
mov dword [ebp + 0x40], eax
je 0x42e80e
jmp 0x42e8b8
mov dword [ebp + 0x40], 0xffffffff
mov ebx, dword [ebp + 0x40]
cmp byte [ebp + 0x57], 0
je 0x42e8d9
cmp ebx, 0xffffffff
jne 0x42e811
jmp 0x42ef77
cmp byte [ebp + 0x57], 0
jne 0x42e80e
mov edi, dword [ebp + 0x30]
mov ebx, dword [ebp + 0x40]
push 2
push 0x4d4b2c
push edi
call dword [sym.imp.MSVCR100.dll_wcsncmp]
add esp, 0xc
test eax, eax
jne 0x42e897
mov byte [ebp + 0x57], 1
jmp 0x42e811
cmp dword [ebp + 0x3c], 0
jne 0x42edc5
cmp ebx, 0xffffffff
je 0x42e949
cmp word [edi], 0x28
jne 0x42e949
cmp word [edi + 2], 0x3a
lea esi, [edi + 2]
je 0x42e949
cmp word [edi + ebx*2 - 2], 0x3a
je 0x42e949
mov cl, byte [0x4e86ee]
mov eax, 1
mov dword [ebp + 0x3c], eax
mov dword [ebp - 0x74], 0
mov byte [ebp + 0x2b], cl
mov byte [ebp + 0x2f], al
mov byte [ebp + 0x2e], 0
mov byte [ebp + 0x37], 0
mov byte [ebp + 0x2d], al
mov dword [ebp - 0xe8], 0xa
mov dword [ebp - 0x80], eax
movzx eax, word [esi]
cmp eax, 0x20
je 0x42e944
cmp eax, 9
jne 0x42eba4
add esi, 2
jmp 0x42e933
mov dword [ebp + 0x3c], 0
cmp ebx, 0xffffffff
je 0x42ef77
test ebx, ebx
je 0x42e811
cmp word [edi + ebx*2 - 2], 0x3a
jne 0x42e973
cmp word [edi], 0x2c
jne 0x42ef77
mov ax, word [edi]
call fcn.00413020
movzx eax, ax
cmp eax, 0x41
je 0x42eb14
cmp eax, 0x4f
je 0x42eae1
movzx eax, word [edi]
cmp eax, 0x3a
je 0x42e9a2
cmp eax, 0x2b
je 0x42e9a2
cmp eax, 0x2d
jne 0x42e9ac
cmp word [edi + 2], ax
je 0x42ef77
push eax
push str.____:.___
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
je 0x42ef77
push 0x4d4b98
push edi
call dword [sym.imp.MSVCR100.dll_wcsstr]
add esp, 8
mov dword [ebp + 0x50], eax
test eax, eax
je 0x42eb61
cmp word [edi], 0x3a
jne 0x42ea38
mov esi, dword [ebp + 0x30]
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
je 0x42ea2e
mov edi, dword [sym.imp.MSVCR100.dll_wcschr]
cmp ax, 0x3a
je 0x42ef77
mov ecx, 0x107
call fcn.00405570
test eax, eax
jne 0x42ea22
movzx eax, word [esi]
push eax
push 0x4d4ba0
call edi
add esp, 8
test eax, eax
je 0x42ea38
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x42e9f8
cmp word [esi], 0x3a
je 0x42ef77
mov eax, dword [ebp + 0x30]
cmp word [eax], 0x2c
jne 0x42ea89
add eax, 2
call fcn.00413050
mov edi, dword [sym.imp.MSVCR100.dll_wcsncmp]
push 2
mov esi, eax
push 0x4d4b98
push esi
call edi
add esp, 0xc
test eax, eax
je 0x42ef77
push 3
push 0x4bfce4
add esi, 0xfffffffe
push esi
call edi
add esp, 0xc
test eax, eax
je 0x42ef77
mov edi, dword [ebp + 0x30]
mov ebx, dword [ebp + 0x40]
jmp 0x42eb61
mov ecx, dword [ebp + 0x50]
cmp eax, ecx
jae 0x42ea9f
cmp word [eax], 0x22
je 0x42ea9d
add eax, 2
cmp eax, ecx
jb 0x42ea90
cmp eax, ecx
je 0x42ef77
movzx eax, word [ecx + 4]
add ecx, 4
test ax, ax
je 0x42ef77
cmp ax, 0x22
je 0x42eacc
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
jne 0x42eab5
jmp 0x42ef77
cmp word [ecx], 0
je 0x42ef77
mov edi, dword [ebp + 0x30]
mov ebx, dword [ebp + 0x40]
jmp 0x42eb61
mov ax, word [edi + 2]
call fcn.00413020
cmp ax, 0x52
jne 0x42ef77
movzx ecx, word [edi + 4]
lea eax, [edi + 4]
cmp ecx, 0x20
je 0x42eb09
cmp ecx, 9
jne 0x42ef77
call fcn.00413050
movzx ecx, word [eax]
push ecx
jmp 0x42eb4b
push 3
push 0x4d4b58
push edi
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x42ef77
movzx ecx, word [edi + 6]
lea eax, [edi + 6]
cmp ecx, 0x20
je 0x42eb42
cmp ecx, 9
jne 0x42ef77
call fcn.00413050
movzx edx, word [eax]
push edx
push 0x4d4b60
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
jne 0x42ef77
mov esi, dword [ebp + 0x4c]
lea eax, [ebx + esi]
cmp eax, 0x4000
jae 0x43023a
cmp word [edi], 0x2c
je 0x42eb85
mov edx, dword [ebp + 0x68]
mov ecx, 0x20
mov word [edx + esi*2], cx
inc esi
mov ecx, dword [ebp + 0x68]
lea eax, [ebx + ebx + 2]
push eax
lea edx, [ecx + esi*2]
push edi
push edx
call sub.MSVCR100.dll_memcpy
add esp, 0xc
add esi, ebx
mov dword [ebp + 0x4c], esi
jmp 0x42e811
cmp word [esi], 0
je 0x42edbc
mov edi, edi
mov ebx, 0x4bfcf4
mov eax, esi
call fcn.00405590
mov dword [ebp + 0x50], eax
test eax, eax
jne 0x42ebe5
mov eax, esi
lea edx, [eax + 2]
jmp 0x42ebd0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42ebd0
sub eax, edx
sar eax, 1
lea edx, [esi + eax*2]
mov dword [ebp + 0x50], edx
mov ebx, dword [ebp + 0x50]
movzx eax, word [ebx]
mov edi, dword [sym.imp.MSVCR100.dll__wcsnicmp]
push 4
xor ecx, ecx
push str.Join
push esi
mov dword [ebp + 0x38], eax
mov word [ebx], cx
call edi
add esp, 0xc
test eax, eax
jne 0x42ed16
push 0xf
add esi, 8
lea edx, [ebp - 0xe8]
push esi
push edx
call dword [sym.imp.MSVCR100.dll_wcsncpy]
movzx ebx, word [0x4e4a50]
add esp, 0xc
xor eax, eax
mov word [ebp - 0xca], ax
lea ecx, [ebp - 0xe8]
lea ebx, [ebx]
movzx eax, word [ecx]
test ax, ax
je 0x42ec59
cmp ax, bx
je 0x42ec7c
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
jne 0x42ec48
lea eax, [ebp - 0xe8]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42ec62
mov ebx, dword [ebp + 0x50]
sub eax, edx
sar eax, 1
mov dword [ebp - 0x80], eax
jmp 0x42ed94
cmp word [ecx], 0
je 0x42ec59
movzx eax, word [ecx + 2]
lea esi, [ecx + 2]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x42ec98.99
movzx edx, byte [eax + 0x430ac4]
jmp dword [edx*4 + 0x430aa0]
mov eax, 7
mov word [esi], ax
jmp case.0x42ec98.99
mov edx, 8
jmp 0x42ece1
mov eax, 0xc
mov word [esi], ax
jmp case.0x42ec98.99
mov edx, 0xa
jmp 0x42ece1
mov eax, 0xd
mov word [esi], ax
jmp case.0x42ec98.99
mov edx, 9
jmp 0x42ece1
mov eax, 0xb
mov word [esi], ax
jmp case.0x42ec98.99
mov edx, 0x20
mov word [esi], dx
mov eax, esi
lea edi, [eax + 2]
lea esp, [esp]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x42ecf0
sub eax, edi
sar eax, 1
lea eax, [eax + eax + 2]
push eax
push esi
push ecx
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
mov ecx, esi
jmp 0x42ec40
push 5
push 0x4d4bf8
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x42ed32
cmp word [esi + 0xa], 0x30
setne byte [ebp + 0x2b]
jmp 0x42ed94
push 5
push str.RTrim
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x42ed4e
cmp word [esi + 0xa], 0x30
setne byte [ebp + 0x2f]
jmp 0x42ed94
movzx eax, word [esi]
test ax, ax
je 0x42ed94
movzx eax, ax
add eax, 0xffffffdb
cmp eax, 0x3e
ja case.0x42ed68.38
movzx ecx, byte [eax + 0x430af4]
jmp dword [ecx*4 + 0x430adc]
mov byte [ebp + 0x2e], 1
jmp case.0x42ed68.38
mov byte [ebp + 0x37], 1
jmp case.0x42ed68.38
mov byte [ebp + 0x2d], 0
jmp case.0x42ed68.38
mov dword [ebp + 0x3c], 2
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x42ed56
mov dx, word [ebp + 0x38]
mov word [ebx], dx
mov esi, ebx
lea ecx, [ecx]
movzx eax, word [esi]
cmp eax, 0x20
je 0x42edad
cmp eax, 9
jne 0x42edb2
add esi, 2
jmp 0x42eda0
cmp word [esi], 0
jne 0x42ebb0
mov byte [ebp - 0x78], 1
jmp 0x42e80e
cmp ebx, 0xffffffff
je 0x430889
cmp ebx, 0xfffffffe
je 0x42e811
cmp word [edi], 0x29
jne 0x42edfa
lea eax, [edi + 2]
mov dword [ebp + 0x38], eax
or eax, 0xffffffff
mov esi, edi
mov dword [ebp + 0x3c], 0
call fcn.00426890
dec eax
jmp 0x42eef3
cmp byte [ebp + 0x2f], 0
mov dword [ebp + 0x38], edi
je 0x42ee12
mov eax, dword [ebp + 0x40]
mov esi, edi
call fcn.00426890
mov dword [ebp + 0x40], eax
mov ebx, eax
cmp byte [ebp + 0x2b], 0
je 0x42ee24
mov eax, ebx
call fcn.00426820
mov dword [ebp + 0x40], eax
mov ebx, eax
xor esi, esi
cmp byte [ebp + 0x2e], 0
je 0x42ee5d
mov ax, word [0x4e4a50]
push esi
push 0xffffffffffffffff
push 1
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp]
push edx
mov word [ebp], ax
mov word [ebp - 0x14], ax
mov word [ebp - 0x12], ax
push edi
xor eax, eax
mov ecx, 0x4001
call fcn.0049ede0
add esp, 0x18
mov esi, eax
cmp byte [ebp + 0x37], 0
je 0x42ee9c
mov ax, word [0x4e4a4c]
mov cx, word [0x4e4a50]
push 0
push 0xffffffffffffffff
push 1
mov word [ebp], ax
mov word [ebp - 0x12], ax
lea edx, [ebp - 0x14]
push edx
lea eax, [ebp]
push eax
mov word [ebp - 0x14], cx
push edi
xor eax, eax
mov ecx, 0x4001
call fcn.0049ede0
add esp, 0x18
add esi, eax
cmp byte [ebp + 0x2d], 0
je 0x42eedb
mov ax, word [0x4e4a48]
mov cx, word [0x4e4a50]
push 0
push 0xffffffffffffffff
push 1
mov word [ebp], ax
mov word [ebp - 0x12], ax
lea edx, [ebp - 0x14]
push edx
lea eax, [ebp]
push eax
mov word [ebp - 0x14], cx
push edi
xor eax, eax
mov ecx, 0x4001
call fcn.0049ede0
add esp, 0x18
add esi, eax
test esi, esi
je 0x42eef8
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42eee4
sub eax, edx
sar eax, 1
mov dword [ebp + 0x40], eax
mov ebx, eax
mov esi, dword [ebp - 0x80]
lea ecx, [esi + ebx]
add ecx, dword [ebp + 0x4c]
cmp ecx, 0x4001
jae 0x4308ef
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp eax, 1
jle 0x42ef43
test esi, esi
je 0x42ef43
cmp dword [ebp + 0x38], edi
jne 0x42ef43
mov ecx, dword [ebp + 0x68]
lea edx, [esi + esi + 2]
push edx
mov edx, dword [ebp + 0x4c]
lea eax, [ebp - 0xe8]
push eax
lea eax, [ecx + edx*2]
push eax
call sub.MSVCR100.dll_memcpy
add esp, 0xc
add dword [ebp + 0x4c], esi
test ebx, ebx
je 0x42e811
mov edx, dword [ebp + 0x38]
mov eax, dword [ebp + 0x68]
mov esi, dword [ebp + 0x4c]
lea ecx, [ebx + ebx + 2]
push ecx
push edx
lea ecx, [eax + esi*2]
push ecx
call sub.MSVCR100.dll_memcpy
add esp, 0xc
add esi, ebx
mov dword [ebp + 0x4c], esi
jmp 0x42e811
mov dx, word [ebp + 0x38]
mov word [ebx], dx
mov ebx, dword [ebp + 0x64]
cmp dword [ebp + 0x4c], 0
mov edi, dword [ebp + 0x68]
je 0x430001
cmp word [ebp - 0x877c], 0
je 0x42f11b
mov esi, dword [ebx + 0x24c]
mov eax, dword [ebp - 0x18]
mov dword [ebx + 0x24c], eax
cmp word [edi], 0x7b
mov dword [ebp - 0x1c], esi
je 0x42f007
cmp byte [ebp + 0x63], 0
jne 0x42f007
cmp dword [ebp + 0x14], 0
jne 0x43025e
cmp dword [ebx + 0x24], 0
je 0x42efd6
mov ecx, dword [0x4e4b24]
cmp dword [ecx + 0xb4], 0
je 0x430287
push 0
push 0
push 0
push 0
push 0
push 3
lea edx, [ebp - 0x877c]
push edx
mov ecx, ebx
call fcn.004329d0
test eax, eax
je 0x430985
mov ebx, dword [ebp + 0x64]
mov dword [ebx + 0x648], 0
jmp 0x42f02f
mov eax, dword [ebp + 0x14]
sub eax, 0
je 0x42f071
dec eax
je 0x42f062
dec eax
jne 0x42f032
mov eax, dword [ebp + 0x64]
push eax
lea ebx, [ebp - 0x877c]
call fcn.00439730
test eax, eax
je 0x430985
mov ebx, dword [ebp + 0x64]
mov edi, dword [ebp + 0x68]
xor ecx, ecx
mov word [ebp - 0x877c], cx
cmp dword [ebp + 0x14], ecx
je 0x42f115
cmp byte [ebp + 0x63], cl
jne 0x42f115
lea ecx, [edi + 2]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42f05d
cmp eax, 9
jne 0x42f0d3
add ecx, 2
jmp 0x42f050
lea ecx, [ebp - 0x877c]
push ecx
push ebx
call fcn.00439240
jmp 0x42f024
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], 0
jne 0x4302bc
lea eax, [ebp - 0x126c0]
push eax
lea ecx, [ebp - 0x877c]
push ecx
push ebx
call fcn.00438710
test eax, eax
je 0x430985
cmp byte [ebp + 0x63], 0
je 0x42f02c
mov edx, dword [ebp + 0x64]
push 0
push 0
push 0
push 0x75
push edx
call fcn.00434ec0
test eax, eax
je 0x430985
mov eax, dword [ebp + 0x64]
mov dword [eax + 0x648], 0
mov ebx, eax
jmp 0x42f02f
cmp word [ecx], 0
jne 0x42f0e4
mov dword [ebx + 0x24c], esi
jmp 0x430001
mov eax, ecx
lea esi, [eax + 2]
lea esp, [esp]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x42f0f0
sub eax, esi
sar eax, 1
lea edx, [eax + eax + 2]
push edx
push ecx
push edi
mov dword [ebp + 0x4c], eax
call dword [sym.imp.MSVCR100.dll_memmove]
mov esi, dword [ebp - 0x1c]
add esp, 0xc
mov dword [ebx + 0x24c], esi
cmp word [edi], 0x7d
jne 0x42f1f6
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x42f1f6
mov ecx, dword [0x4e4b24]
cmp dword [ecx + 0xb4], 0
jne 0x42f1f6
cmp dword [ebx + 0x240], 0
je 0x42f176
mov eax, dword [ebx + 0x244]
mov dword [ebx + 0x240], 0
test eax, eax
je 0x42f1b1
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [ebx + 0x244], 0
jmp 0x42f1b1
dec eax
mov dword [ebx + 0x24], eax
mov edi, dword [ebx + eax*4 + 0x28]
call fcn.0048f610
mov edx, dword [ebx + 0x24]
mov eax, dword [ebx + edx*4 + 0x28]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea esi, [ebx + 0x3c]
push 0x2e
push esi
call dword [sym.imp.MSVCR100.dll_wcsrchr]
add esp, 8
test eax, eax
je 0x42f1ac
xor ecx, ecx
mov word [eax], cx
jmp 0x42f1b1
xor edx, edx
mov word [esi], dx
mov eax, dword [ebp + 0x68]
movzx ecx, word [eax + 2]
add eax, 2
cmp ecx, 0x20
je 0x42f1b4
cmp ecx, 9
je 0x42f1b4
cmp word [eax], 0
mov dword [ebp + 0x68], eax
je 0x430001
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42f1d5
sub eax, edx
sar eax, 1
mov dword [ebp + 0x4c], eax
mov dword [ebx + 0x648], 0
jmp 0x42ef7a
cmp dword [ebx + 0x240], 0
je 0x42f2c5
mov eax, dword [0x4e4b24]
cmp dword [eax + 0xb4], 0
jne 0x42f2c5
mov esi, dword [sym.imp.MSVCR100.dll__wcsnicmp]
push 3
push 0x4d4cec
push edi
call esi
add esp, 0xc
test eax, eax
je 0x42f241
push 3
push 0x4d4cf4
push edi
call esi
add esp, 0xc
test eax, eax
jne 0x4302e5
lea esi, [edi + 6]
movzx eax, word [esi]
cmp eax, 0x20
je 0x42f251
cmp eax, 9
jne 0x42f256
add esi, 2
jmp 0x42f244
movzx eax, word [esi]
test ax, ax
je 0x42f272
cmp eax, 0x7b
jne 0x4302e5
cmp word [esi + 2], 0
jne 0x4302e5
mov eax, dword [ebx + 0x244]
lea edx, [ebp - 0x877c]
sub edx, eax
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x42f280
lea ecx, [ebp - 0x877c]
push 0x2e
push ecx
call dword [sym.imp.MSVCR100.dll_wcschr]
mov dx, word [edi]
mov word [eax + 2], dx
mov eax, dword [ebx + 0x24c]
add esp, 8
cmp word [esi], 0x7b
mov dword [ebp - 0x18], eax
sete byte [ebp + 0x63]
mov dword [ebp + 0x14], 0
jmp 0x430001
lea ecx, [ebp + 0x63]
push ecx
mov eax, edi
call fcn.0042baf0
add esp, 4
test al, al
je 0x42f305
lea edx, [ebp - 0x877c]
mov eax, edi
sub edx, edi
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x42f2e1
mov edx, dword [ebx + 0x24c]
mov dword [ebp - 0x18], edx
mov dword [ebp + 0x14], 0
jmp 0x430001
mov eax, dword [0x4e4b24]
cmp dword [eax + 0xb4], 0
jne 0x42f4be
lea ecx, [ebp + 0x63]
push ecx
mov eax, edi
call fcn.0042bbb0
add esp, 4
test eax, eax
je 0x42f355
lea edx, [ebp - 0x877c]
sub edx, eax
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x42f331
mov edx, dword [ebx + 0x24c]
mov dword [ebp - 0x18], edx
mov dword [ebp + 0x14], 1
jmp 0x430001
cmp dword [ebx + 0x24], 0
je 0x42f4be
mov esi, edi
movzx eax, word [esi]
test eax, 0xffffff80
jne 0x42f37e
push 0x107
push eax
call dword [sym.imp.MSVCR100.dll__isctype]
add esp, 8
test eax, eax
jne 0x42f390
movzx eax, word [esi]
cmp eax, 0x5f
je 0x42f390
cmp eax, 0x7f
ja 0x42f390
cmp eax, 0x2e
jne 0x42f395
add esi, 2
jmp 0x42f361
cmp esi, edi
jbe 0x42f439
mov eax, esi
call fcn.00413050
movzx ecx, word [eax]
cmp ecx, 0x3a
jne 0x42f3c9
cmp word [eax + 2], 0x3d
jne 0x42f3c9
push 0
push edi
push ebx
call fcn.004398c0
test eax, eax
je 0x430985
jmp case.0x42fafe.14
test cx, cx
je 0x42f3df
cmp ecx, 0x5b
je 0x42f3df
cmp ecx, 0x7b
jne 0x42f439
cmp word [eax + 2], 0
jne 0x42f439
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42f3e4
sub eax, edx
sar eax, 1
cmp word [edi + eax*2 - 2], 0x7b
sete cl
mov byte [ebp + 0x63], cl
test cl, cl
je 0x42f40b
dec eax
mov esi, edi
call fcn.00426890
lea edx, [ebp - 0x877c]
mov eax, edi
sub edx, edi
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x42f415
mov eax, dword [ebx + 0x24c]
mov dword [ebp - 0x18], eax
mov dword [ebp + 0x14], 2
jmp 0x430001
push 6
push str.Static
push edi
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x42f475
movzx eax, word [edi + 0xc]
cmp eax, 0x20
je 0x42f45c
cmp eax, 9
jne 0x42f475
push 1
add edi, 0xe
push edi
push ebx
call fcn.004398c0
test eax, eax
je 0x430985
jmp case.0x42fafe.14
cmp word [edi], 0x23
jne 0x430392
mov edx, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x64]
mov esi, dword [ecx + 0x24c]
push edx
call fcn.004310b0
test eax, eax
je 0x430985
cmp eax, 3
jne 0x430392
mov eax, dword [ebp + 0x64]
mov ecx, dword [ebp + 4]
mov dword [eax + 0x248], ecx
mov dword [eax + 0x24c], esi
mov ebx, eax
jmp 0x430001
mov edi, dword [ebp + 0x68]
xor eax, eax
cmp word [edi], 0x3a
mov dword [ebp + 0x3c], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp + 0x50], eax
jne 0x42f553
mov eax, dword [ebp + 0x68]
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
je 0x42f553
cmp ecx, 0x3a
je 0x42f4ff
push 0x3a
push eax
mov dword [ebp - 0x1c], eax
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
je 0x42f54c
add eax, 2
jmp 0x42f50b
mov eax, dword [ebp + 0x68]
add eax, 4
cmp word [eax], 0
je 0x42f553
mov dword [ebp + 0x3c], eax
test eax, eax
je 0x42f553
mov edi, eax
movzx eax, word [edi]
test ax, ax
je 0x42f542
mov cx, word [0x4e4a50]
cmp ax, cx
je 0x42f5c6
cmp ax, 0x3a
je 0x42f5c6
movzx eax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x42f523
cmp dword [ebp + 0x50], 0
jne 0x42f6f0
mov dword [ebp + 0x3c], 0
mov edx, dword [ebp + 0x68]
push 0x4d4b98
push edx
call dword [sym.imp.MSVCR100.dll_wcsstr]
mov edi, eax
add esp, 8
mov dword [ebp + 0x50], edi
test edi, edi
je 0x42fe62
mov ecx, dword [ebp + 0x68]
cmp edi, ecx
jne 0x42f586
cmp word [edi + 4], 0x3a
jne 0x42f586
add edi, 2
mov dword [ebp + 0x50], edi
mov esi, edi
cmp edi, ecx
jbe 0x42f5a4
lea esp, [esp]
movzx eax, word [esi]
cmp eax, 0x20
je 0x42f59d
cmp eax, 9
jne 0x42f5a4
sub esi, 2
cmp esi, ecx
ja 0x42f590
movzx eax, word [esi]
xor edx, edx
mov dword [ebp + 0x38], eax
mov word [esi], dx
nop
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42f5c1
cmp eax, 9
jne 0x42f685
add ecx, 2
jmp 0x42f5b0
movzx eax, word [edi]
test ax, ax
je 0x42f542
lea esi, [edi + 2]
cmp eax, 0x3a
jne 0x42f5f0
cmp word [esi], ax
jne 0x42f67d
mov dword [ebp + 0x50], edi
mov edi, esi
add edi, 2
jmp 0x42f514
movzx eax, word [esi]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x42f602.99
movzx edx, byte [eax + 0x430b54]
jmp dword [edx*4 + 0x430b34]
mov eax, 7
jmp 0x42f644
mov ecx, 8
mov word [esi], cx
jmp case.0x42f602.99
mov edx, 0xc
mov word [esi], dx
jmp case.0x42f602.99
mov eax, 0xa
jmp 0x42f644
mov ecx, 0xd
mov word [esi], cx
jmp case.0x42f602.99
mov edx, 9
mov word [esi], dx
jmp case.0x42f602.99
mov eax, 0xb
mov word [esi], ax
mov eax, esi
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42f650
sub eax, edx
sar eax, 1
lea ecx, [eax + eax + 2]
push ecx
push esi
push edi
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
cmp word [edi], 0x3a
jne 0x42f67d
cmp word [esi], 0x3a
jne 0x42f67d
mov edi, esi
add edi, 2
jmp 0x42f514
push 0
push ecx
xor ebx, ebx
call fcn.004154b0
add esp, 8
mov dword [ebp - 0x70], eax
cmp eax, ebx
je 0x42f6dc
cmp eax, 4
jne 0x42f6e1
mov esi, dword [ebp + 0x58]
cmp esi, ebx
je 0x4303b9
mov eax, dword [ebp + 0x5c]
cmp eax, ebx
jbe 0x42f6bb
push eax
push ebx
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x4303b9
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x4303bf
mov dword [ebp + 0x50], ebx
mov edi, ebx
mov ax, word [ebp + 0x38]
mov word [esi], ax
cmp edi, ebx
je 0x42fe62
mov ecx, dword [ebp + 0x50]
cmp ecx, dword [ebp + 0x68]
jbe 0x42fe62
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], 0
jne 0x430407
mov esi, dword [ebp + 0x64]
mov eax, dword [esi + 0x610]
test eax, eax
je 0x42f725
cmp byte [eax], 0x1a
je 0x4304b8
mov edi, dword [ebp + 0x50]
xor eax, eax
mov word [edi], ax
add edi, 4
mov dword [ebp + 0x50], edi
cmp dword [ebp + 0x3c], eax
jne 0x42fb3f
cmp word [edi], ax
je 0x42f781
mov ecx, edi
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42f750
cmp eax, 9
jne 0x42f755
add ecx, 2
jmp 0x42f743
mov edx, ecx
sub edx, edi
sar edx, 1
je 0x42f781
mov eax, ecx
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x42f762
sub eax, esi
sar eax, 1
lea eax, [eax + eax + 2]
push eax
push ecx
push edi
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
mov eax, dword [ebp + 0x50]
cmp word [eax], 0
mov ebx, eax
mov dword [ebp + 0x38], ebx
je 0x42fb3c
movzx edi, word [eax + 2]
test di, di
je 0x42f8f7
mov esi, eax
xor dl, dl
lea ebx, [eax + 2]
xor cl, cl
mov eax, edi
jmp 0x42f7b0
cmp ax, 0x20
je case.0x42f7d0.34
movzx eax, word [esi]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x42f7d0.34
movzx eax, byte [eax + 0x430b8c]
jmp dword [eax*4 + 0x430b6c]
mov cl, 1
jmp case.0x42f7d0.36
mov dl, 1
jmp case.0x42f7d0.36
test cl, cl
jne 0x42f7f6
test dl, dl
jne 0x42f7fa
or dword [ebp + 0x10], 1
jmp case.0x42f7d0.36
test dl, dl
je 0x42f800
or byte [ebp + 0x7b], 4
xor dl, dl
test cl, cl
je case.0x42f7d0.36
or byte [ebp + 0x7b], 8
jmp 0x42f86e
test cl, cl
jne 0x42f818
test dl, dl
jne 0x42f81c
or dword [ebp + 0x10], 2
jmp case.0x42f7d0.36
test dl, dl
je 0x42f822
or byte [ebp + 0x7b], 1
xor dl, dl
test cl, cl
je case.0x42f7d0.36
or byte [ebp + 0x7b], 2
jmp 0x42f86e
test cl, cl
jne 0x42f83a
test dl, dl
jne 0x42f83e
or dword [ebp + 0x10], 4
jmp case.0x42f7d0.36
test dl, dl
je 0x42f844
or byte [ebp + 0x7b], 0x10
xor dl, dl
test cl, cl
je case.0x42f7d0.36
or byte [ebp + 0x7b], 0x20
jmp 0x42f86e
test cl, cl
jne 0x42f85c
test dl, dl
jne 0x42f860
or dword [ebp + 0x10], 8
jmp case.0x42f7d0.36
test dl, dl
je 0x42f866
or byte [ebp + 0x7b], 0x40
xor dl, dl
test cl, cl
je case.0x42f7d0.36
or byte [ebp + 0x7b], 0x80
xor cl, cl
mov esi, ebx
movzx eax, word [esi + 2]
lea ebx, [esi + 2]
test ax, ax
jne 0x42f7b0
mov ebx, esi
push 0
mov dword [ebp + 0x38], ebx
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push 0
push 0
mov eax, esi
call fcn.0041c480
add esp, 0xc
mov byte [ebp + 0x77], al
test al, al
je 0x42fb3c
mov esi, dword [ebp + 0x68]
cmp word [esi], 0
je 0x42f9ad
mov eax, esi
movzx esi, word [eax + 2]
lea ecx, [eax + 2]
xor bl, bl
xor dl, dl
test si, si
je case.0x42f8f0.34
mov edi, ecx
mov ecx, esi
cmp cx, 0x20
je case.0x42f8f0.34
movzx ecx, word [eax]
add ecx, 0xffffffdf
cmp ecx, 0x5d
ja case.0x42f8f0.34
movzx ecx, byte [ecx + 0x430c0c]
jmp dword [ecx*4 + 0x430bec]
mov byte [ebp + 0x77], 0xff
jmp 0x42f8a9
mov dl, 1
jmp case.0x42f8f0.36
mov bl, 1
jmp case.0x42f8f0.36
test dl, dl
jne 0x42f91c
test bl, bl
jne 0x42f920
or dword [ebp + 8], 1
jmp case.0x42f8f0.36
test bl, bl
je 0x42f926
or byte [ebp + 0x7f], 4
xor bl, bl
test dl, dl
je case.0x42f8f0.36
or byte [ebp + 0x7f], 8
jmp 0x42f994
test dl, dl
jne 0x42f93e
test bl, bl
jne 0x42f942
or dword [ebp + 8], 2
jmp case.0x42f8f0.36
test bl, bl
je 0x42f948
or byte [ebp + 0x7f], 1
xor bl, bl
test dl, dl
je case.0x42f8f0.36
or byte [ebp + 0x7f], 2
jmp 0x42f994
test dl, dl
jne 0x42f960
test bl, bl
jne 0x42f964
or dword [ebp + 8], 4
jmp case.0x42f8f0.36
test bl, bl
je 0x42f96a
or byte [ebp + 0x7f], 0x10
xor bl, bl
test dl, dl
je case.0x42f8f0.36
or byte [ebp + 0x7f], 0x20
jmp 0x42f994
test dl, dl
jne 0x42f982
test bl, bl
jne 0x42f986
or dword [ebp + 8], 8
jmp case.0x42f8f0.36
test bl, bl
je 0x42f98c
or byte [ebp + 0x7f], 0x40
xor bl, bl
test dl, dl
je case.0x42f8f0.36
or byte [ebp + 0x7f], 0x80
xor dl, dl
mov eax, edi
movzx ecx, word [eax + 2]
lea edi, [eax + 2]
test cx, cx
jne 0x42f8d0
mov ebx, dword [ebp + 0x38]
mov esi, eax
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push 0
push 0
mov eax, esi
call fcn.0041c480
push 0x4bfce4
push esi
mov byte [ebp + 0x46], al
call dword [sym.imp.MSVCR100.dll_wcsstr]
mov dl, byte [ebp + 0x46]
add esp, 0x14
test eax, eax
setne byte [ebp + 0xf]
dec dl
cmp dl, 5
ja 0x42f9e9
cmp byte [ebp + 0x46], 3
jne 0x42f9f2
mov al, byte [ebp + 0x46]
add al, 0x66
cmp al, 5
ja 0x42f9f6
mov cl, 1
jmp 0x42f9f8
xor cl, cl
mov al, byte [ebp + 0x77]
lea edx, [eax - 1]
cmp dl, 5
ja 0x42fa07
cmp al, 3
jne 0x42fa0d
add al, 0x66
cmp al, 5
ja 0x42fa13
mov byte [ebp + 0x47], 1
jmp 0x42fa17
mov byte [ebp + 0x47], 0
test cl, cl
jne 0x42fa24
mov byte [ebp + 0x2c], 1
cmp byte [ebp + 0x47], cl
jne 0x42fa28
mov byte [ebp + 0x2c], 0
mov eax, esi
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42fa30
sub eax, edx
sar eax, 1
cmp eax, 1
jne 0x42fa57
movzx eax, word [esi]
push eax
call dword [sym.imp.USER32.dll_IsCharUpperW]
mov ecx, 0x4d4de4
test eax, eax
jne 0x42fa5c
mov ecx, 0x4bd2c4
cmp byte [ebp + 0xf], 0
mov eax, 0x4bd2c4
jne 0x42fa6c
mov eax, 0x4d4acc
mov edx, dword [ebp + 0x68]
push edx
push ecx
push eax
push 0x4d4de8
mov esi, 0x20
lea edi, [ebp - 0x168]
call fcn.0049e5c0
mov esi, dword [sym.imp.MSVCR100.dll_wcsncpy]
push 0x1f
lea eax, [ebp - 0x128]
push ebx
push eax
call esi
mov edi, dword [ebp + 0x50]
push 7
lea edx, [ebp - 0xc8]
xor ecx, ecx
push edi
push edx
mov word [ebp - 0xea], cx
call esi
xor eax, eax
sub ebx, edi
mov word [ebp - 0xba], ax
mov eax, ebx
sar eax, 1
add esp, 0x28
cmp eax, 8
jae 0x42fad2
xor ecx, ecx
mov word [ebp + eax*2 - 0xc8], cx
cmp word [ebp - 0xc8], 0
mov dword [ebp - 0x64], 0
jne case.0x42fafe.14
movzx eax, byte [ebp + 0x77]
add eax, 0xfffffff3
cmp eax, 0x52
ja case.0x42fafe.14
movzx edx, byte [eax + 0x430c7c]
jmp dword [edx*4 + 0x430c6c]
mov eax, dword [ebp + 0x50]
mov ebx, 0x4c01ac
call fcn.00405590
test eax, eax
jne case.0x42fafe.19
jmp case.0x42fafe.14
lea eax, [ebp - 0x128]
push str.Return
push eax
call dword [sym.imp.MSVCR100.dll__wcsicmp]
add esp, 8
test eax, eax
jne case.0x42fafe.14
mov byte [ebp + 0x77], 0
mov esi, dword [ebp + 0x64]
cmp byte [esi + 0x250], 0
je 0x42fb75
push 0
push 0xff
push 0
push 0x67
push esi
mov byte [esi + 0x250], 0
call fcn.00434ec0
test eax, eax
je 0x430985
mov esi, dword [ebp + 0x64]
mov dword [esi + 0x648], 0
mov eax, dword [ebp + 0x68]
push 1
call fcn.00432860
test eax, eax
je 0x430985
mov edi, dword [ebp + 0x3c]
test edi, edi
je 0x42fc6f
cmp word [edi], 0
je 0x43056e
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x42fba8
mov eax, 0x4bd2c4
mov ecx, dword [ebp - 0x78]
mov edx, dword [ebp + 0x50]
push 0
push ecx
push edx
mov edx, dword [ebp + 0x64]
push eax
mov eax, dword [edx + 0x620]
push ecx
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [edx + 0x620]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x1c], esp
push ecx
call fcn.004166f0
add esp, 0x18
test eax, eax
je 0x430985
mov eax, dword [ebp + 0x50]
cmp word [eax], 0
je case.0x42fafe.14
mov edx, dword [0x4e898c]
mov ecx, dword [0x4e8990]
mov edx, dword [edx + ecx*4 - 4]
cmp byte [edx + 0x2d], 0
mov ebx, dword [ebp + 0x64]
je 0x42fc1c
push 0
push 0
push 0
push 0
push 0
push 0
push eax
mov ecx, ebx
call fcn.004329d0
test eax, eax
je 0x42fc32
push 0
push 0
push 0
push 0x67
push ebx
call fcn.00434ec0
test eax, eax
jne 0x430001
mov esi, dword [ebp + 0x58]
test esi, esi
je 0x42e4e3
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x42fc50
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x42e4e3
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
jmp 0x42e4e3
mov edi, dword [ebp + 0x50]
xor esi, esi
cmp word [edi], si
je 0x42fd6c
mov esi, dword [sym.imp.MSVCR100.dll__wcsicmp]
push str.AltTab
push edi
call esi
add esp, 8
test eax, eax
jne 0x42fc9f
mov ebx, dword [ebp + 0x64]
mov esi, 0x7ffe
jmp 0x42fd1b
push str.ShiftAltTab
push edi
call esi
add esp, 8
test eax, eax
jne 0x42fcb8
mov ebx, dword [ebp + 0x64]
mov esi, 0x7ffd
jmp 0x42fd1b
push str.AltTabMenu
push edi
call esi
add esp, 8
test eax, eax
jne 0x42fcd1
mov ebx, dword [ebp + 0x64]
mov esi, 0x7ffc
jmp 0x42fd1b
push str.AltTabAndMenu
push edi
call esi
add esp, 8
test eax, eax
jne 0x42fcea
mov ebx, dword [ebp + 0x64]
mov esi, 0x7ffb
jmp 0x42fd1b
push str.AltTabMenuDismiss
push edi
call esi
mov ebx, dword [ebp + 0x64]
add esp, 8
test eax, eax
jne 0x42fd03
mov esi, 0x7ffa
jmp 0x42fd1b
xor esi, esi
push esi
push esi
push esi
push esi
push esi
push esi
push edi
mov ecx, ebx
call fcn.004329d0
test eax, eax
je 0x43061f
push 0
push 0
push 0
push 0x67
push ebx
call fcn.00434ec0
test eax, eax
jne 0x42fd6f
mov esi, dword [ebp + 0x58]
test esi, esi
je 0x4306a7
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x42fd4b
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x4306a7
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x4306ad
mov ebx, dword [ebp + 0x64]
mov edx, dword [ebp + 0x68]
lea eax, [ebp + 0x1b]
push eax
lea ecx, [ebp - 0x7c]
push ecx
push edx
call fcn.00415c20
mov edi, eax
add esp, 0xc
test edi, edi
je 0x42fde7
test si, si
je 0x42fd97
mov word [edi + 6], si
jmp 0x430001
mov eax, dword [edi + 0x20]
test eax, eax
je 0x42fdb4
mov ecx, dword [0x4e8068]
cmp dword [eax + 4], ecx
je 0x4306fb
mov eax, dword [eax + 8]
test eax, eax
jne 0x42fda4
mov eax, dword [ebp - 0x7c]
push eax
mov eax, dword [ebx + 0x620]
call fcn.00415390
test eax, eax
je 0x4307b5
cmp byte [ebp + 0x1b], 0
jne 0x42fdde
cmp byte [0x4e86ef], 0
je case.0x42fafe.14
mov byte [edi + 0x14], 1
jmp 0x430001
mov ecx, dword [ebp + 0x64]
mov eax, dword [ecx + 0x620]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [eax + 4]
push edx
push ecx
push esi
push eax
xor bl, bl
call fcn.00414c40
add esp, 0x10
test eax, eax
jne case.0x42fafe.14
cmp dword [ebp - 0x70], 3
jne 0x430985
mov edx, dword [ebp + 0x64]
cmp dword [edx + 0xaf8], eax
jne case.0x42fafe.14
mov eax, dword [ebp + 0x68]
push eax
push str.Note:_The_hotkey__s_will_not_be_active_because_it_does_not_exist_in_the_current_keyboard_layout.
mov esi, 0x204
lea edi, [ebp - 0x778]
call fcn.0049e5c0
fldz
add esp, 8
push 0
sub esp, 8
fstp qword [esp]
push 0
mov ecx, edi
push 0x10000
push ecx
call fcn.004a4470
add esp, 0x18
jmp case.0x42fafe.14
mov edx, dword [ebp + 0x4c]
mov esi, dword [ebp + 0x68]
cmp word [esi + edx*2 - 2], 0x3a
jne 0x42ff4f
cmp edx, 1
je 0x4307db
movzx eax, word [esi]
mov ecx, esi
test ax, ax
je 0x42fec7
mov di, word [0x4e4a48]
mov bx, word [0x4e4a50]
cmp ax, 0x20
je 0x42ff4f
cmp ax, 9
je 0x42ff4f
cmp ax, di
je 0x42ff4f
cmp ax, bx
je 0x42ff4f
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
jne 0x42fe95
cmp word [esi + edx*2 - 4], 0x3a
jne 0x42fed8
cmp edx, 2
ja 0x42ff4f
dec edx
xor eax, eax
mov word [esi + edx*2], ax
cmp word [esi], 0
mov eax, edx
je 0x42ff34
cmp edx, 0xffffffff
jne 0x42ff00
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42fef1
sub eax, edx
sar eax, 1
lea eax, [esi + eax*2 - 2]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42ff11
cmp ecx, 9
jne 0x42ff1a
cmp eax, esi
je 0x42ff22
sub eax, 2
jmp 0x42ff04
xor ecx, ecx
mov word [eax + 2], cx
jmp 0x42ff34
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42ff2f
cmp ecx, 9
jne 0x42ff34
xor edx, edx
mov word [eax], dx
mov eax, esi
mov esi, dword [ebp + 0x64]
push 0
call fcn.00432860
test eax, eax
je 0x430985
mov ebx, esi
jmp 0x430001
cmp word [esi], 0x23
jne 0x42ff8d
mov ecx, dword [ebp + 0x64]
mov edi, dword [ecx + 0x24c]
push esi
call fcn.004310b0
test eax, eax
je 0x430985
cmp eax, 3
jne 0x42ff8a
mov eax, dword [ebp + 0x64]
mov ecx, dword [ebp + 4]
mov dword [eax + 0x248], ecx
mov dword [eax + 0x24c], edi
mov ebx, eax
jmp 0x430001
mov esi, dword [ebp + 0x68]
movzx eax, word [esi]
cmp eax, 0x7b
je 0x42ffb9
cmp eax, 0x7d
je 0x42ffb9
mov ecx, dword [ebp + 0x64]
push 0
push 0
push 0
push 0
push 0
push 0
push esi
call fcn.004329d0
test eax, eax
je 0x430985
jmp case.0x42fafe.14
mov ecx, dword [ebp + 0x64]
cmp eax, 0x7b
push 0
setne dl
push 0
add dl, 0x75
movzx eax, dl
push 0
push eax
push ecx
call fcn.00434ec0
test eax, eax
je 0x430985
mov eax, dword [ebp + 0x68]
movzx ecx, word [eax + 2]
add eax, 2
cmp ecx, 0x20
je 0x42ffe0
cmp ecx, 9
je 0x42ffe0
cmp word [eax], 0
mov dword [ebp + 0x68], eax
jne 0x43016b
mov ebx, dword [ebp + 0x64]
cmp byte [ebp + 0x77], 0
je case.0x430023.4
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
dec eax
cmp eax, 9
ja case.0x430023.4
movzx edx, byte [eax + 0x430ce4]
jmp dword [edx*4 + 0x430cd0]
mov ecx, dword [ebp + 0x68]
lea eax, [ebp - 0x168]
push eax
push str._s::
push ecx
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0xc
mov dword [ebp + 0x4c], eax
jmp 0x42f4bb
mov esi, dword [ebp + 0x68]
mov eax, 0x4bf838
mov edx, esi
sub edx, eax
jmp 0x430060
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x430060
cmp byte [ebp + 0x47], cl
push 0
setne al
push 1
add al, 0xc3
lea edx, [ebp + 0x68]
movzx ecx, al
push edx
push ecx
push ebx
call fcn.00434ec0
cmp byte [ebp + 0x2c], 0
je case.0x430023.10
lea edx, [ebp - 0x128]
push edx
push str.if_not_GetKeyState___s__
push esi
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0xc
mov dword [ebp + 0x4c], eax
mov dword [ebp - 0x64], 9
jmp 0x42f4bb
mov al, byte [ebp + 0x77]
mov ecx, 0x4bd2c4
cmp al, 0x12
je 0x4300c8
cmp al, 0xa3
jbe 0x4300e7
cmp al, 0xa5
ja 0x4300e7
movzx eax, byte [ebp + 0x46]
sub eax, 0x11
je 0x4300e2
sub eax, 0x91
je 0x4300e2
dec eax
jne 0x4300e7
mov ecx, str.RCtrl_up
jmp 0x4300e7
mov ecx, str.LCtrl_up
mov edi, dword [sym.imp.MSVCR100.dll__swprintf]
lea eax, [ebp - 0x128]
push eax
mov eax, dword [ebp + 0x68]
lea edx, [ebp - 0xc8]
push edx
push ecx
push str.Blind_s_s_s_DownR
push eax
mov dword [ebx + 0x648], 0
call edi
add esp, 0x14
push 0
push 1
lea ecx, [ebp + 0x68]
push ecx
push 0x41
push ebx
call fcn.00434ec0
test eax, eax
je 0x430985
mov esi, dword [ebp + 0x64]
push 0
push 0
push 0
push 0x67
push esi
call fcn.00434ec0
mov eax, dword [ebp + 0x68]
lea edx, [ebp - 0x168]
push edx
push str._s_up::
push eax
mov dword [esi + 0x648], 0
call edi
add esp, 0xc
mov dword [ebp + 0x4c], eax
mov dword [ebp - 0x64], 2
jmp 0x42f4bb
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x430170
mov ecx, dword [ebp + 0x64]
sub eax, edx
sar eax, 1
mov dword [ebp + 0x4c], eax
mov dword [ecx + 0x648], 0
mov ebx, ecx
jmp 0x42ef7a
mov esi, dword [ebp + 0x68]
mov eax, 0x4bf838
mov edx, esi
sub edx, eax
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x4301a2
cmp byte [ebp + 0x47], cl
push 0
setne al
push 1
add al, 0xc3
lea edx, [ebp + 0x68]
movzx ecx, al
push edx
push ecx
push ebx
call fcn.00434ec0
lea edx, [ebp - 0x128]
push edx
push str.Blind_s_Up
push esi
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0xc
push 0
push 1
lea eax, [ebp + 0x68]
push eax
push 0x41
push ebx
call fcn.00434ec0
push 0
push 0
push 0
push 0x67
push ebx
call fcn.00434ec0
mov byte [ebp + 0x77], 0
mov eax, dword [ebp + 0x30]
mov ecx, dword [ebp + 0x40]
mov ebx, dword [ebp + 0x64]
lea edx, [ebp - 0x10780]
xor edi, edi
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x4c], ecx
cmp eax, edx
jne 0x43022c
lea eax, [ebp - 0x1a6c4]
mov dword [ebp + 0x30], eax
jmp 0x42e7c1
lea ecx, [ebp - 0x10780]
mov dword [ebp + 0x30], ecx
jmp 0x42e7c1
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x430250
mov edx, dword [ebp + 0x1c]
push eax
push 0
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, dword [ebp + 0x64]
push edi
push str.Continuation_section_too_long.
jmp 0x42e6b1
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x430274
push eax
mov eax, dword [ebp + 0x1c]
push 0
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x877c]
push ecx
push 0x4d4c70
mov ecx, ebx
jmp 0x4308ab
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x43029d
mov edx, dword [ebp + 0x1c]
push eax
push 0
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [ebx + 0x240], 0
mov eax, 0x4d4c70
jne 0x4302b0
mov eax, str.Not_a_valid_method__class_or_property_definition.
lea ecx, [ebp - 0x877c]
push ecx
jmp 0x42e6ae
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x4302d2
mov edx, dword [ebp + 0x1c]
push eax
push 0
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
lea eax, [ebp - 0x877c]
push eax
push str.Functions_cannot_contain_functions.
mov ecx, ebx
jmp 0x4308ab
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x4302fb
mov ecx, dword [ebp + 0x1c]
push eax
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
push edi
push str.Not_a_valid_property_getter_setter.
mov ecx, ebx
call fcn.00449df0
mov esi, dword [ebp + 0x58]
mov edi, eax
test esi, esi
je 0x43033e
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x430324
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x43033e
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x430344
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x430365
cmp byte [ebp - 0x24], 0
je 0x43035e
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e6c8
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [ebp - 0x30]
push edx
call esi
add esp, 0x10
jmp 0x42e6c8
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x4303a8
push eax
mov eax, dword [ebp + 0x1c]
push 0
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, dword [ebp + 0x68]
push ecx
mov ecx, dword [ebp + 0x64]
push str.Not_a_valid_method__class_or_property_definition.
jmp 0x42e6b1
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
cmp eax, ebx
je 0x4303db
cmp byte [ebp - 0x24], bl
je 0x4303d8
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
cmp eax, ebx
je 0x42e4eb
push 0x2000
push ebx
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [ebp - 0x30]
push edx
call esi
add esp, 0x10
jmp 0x42e4eb
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x43041d
push eax
mov eax, dword [ebp + 0x1c]
push 0
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, dword [ebp + 0x68]
push ecx
mov ecx, dword [ebp + 0x64]
push str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
call fcn.00449df0
mov esi, dword [ebp + 0x58]
mov edi, eax
test esi, esi
je 0x430464
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x43044a
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x430464
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x43046a
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x43048b
cmp byte [ebp - 0x24], 0
je 0x430484
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e6c8
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [ebp - 0x30]
push edx
call esi
add esp, 0x10
jmp 0x42e6c8
mov dword [esi + 0x648], eax
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x4304d4
mov ecx, dword [ebp + 0x1c]
push eax
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov edx, dword [ebp + 0x68]
push edx
push str.IfWin_should_be_IfWin.
mov ecx, esi
call fcn.00449df0
mov esi, dword [ebp + 0x58]
mov edi, eax
test esi, esi
je 0x43051a
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x430500
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x43051a
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x430520
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x430541
cmp byte [ebp - 0x24], 0
je 0x43053a
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e6c8
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov eax, dword [ebp - 0x30]
push eax
call esi
add esp, 0x10
jmp 0x42e6c8
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x430584
mov ecx, dword [ebp + 0x1c]
push eax
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov edx, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x64]
push edx
push str.This_hotstring_is_missing_its_abbreviation.
call fcn.00449df0
mov esi, dword [ebp + 0x58]
mov edi, eax
test esi, esi
je 0x4305cb
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x4305b1
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x4305cb
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x4305d1
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x4305f2
cmp byte [ebp - 0x24], 0
je 0x4305eb
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e6c8
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov eax, dword [ebp - 0x30]
push eax
call esi
add esp, 0x10
jmp 0x42e6c8
mov esi, dword [ebp + 0x58]
test esi, esi
je 0x430653
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x430639
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x430653
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x430659
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x43067a
cmp byte [ebp - 0x24], 0
je 0x430673
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e4eb
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov ecx, dword [ebp - 0x30]
push ecx
call esi
add esp, 0x10
jmp 0x42e4eb
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x4306ce
cmp byte [ebp - 0x24], 0
je 0x4306c7
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e4eb
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [ebp - 0x30]
push edx
call esi
add esp, 0x10
jmp 0x42e4eb
mov eax, dword [ebp + 0x48]
mov dword [ebx + 0x648], 0
test eax, eax
je 0x43071b
push eax
mov eax, dword [ebp + 0x1c]
push 0
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, dword [ebp + 0x68]
push ecx
push str.Duplicate_hotkey.
mov ecx, ebx
call fcn.00449df0
mov esi, dword [ebp + 0x58]
mov edi, eax
test esi, esi
je 0x430761
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x430747
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x430761
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x430767
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x430788
cmp byte [ebp - 0x24], 0
je 0x430781
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e6c8
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [ebp - 0x30]
push edx
call esi
add esp, 0x10
jmp 0x42e6c8
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x4307cb
push eax
mov eax, dword [ebp + 0x1c]
push 0
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, dword [ebp + 0x68]
push ecx
push 0x4bd2fc
mov ecx, ebx
jmp 0x4308ab
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x4307f1
mov edx, dword [ebp + 0x1c]
push eax
push 0
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, dword [ebp + 0x64]
push esi
push str.This_line_does_not_contain_a_recognized_action.
call fcn.00449df0
mov esi, dword [ebp + 0x58]
mov edi, eax
test esi, esi
je 0x430835
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x43081b
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x430835
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x43083b
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x43085c
cmp byte [ebp - 0x24], 0
je 0x430855
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e6c8
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov eax, dword [ebp - 0x30]
push eax
call esi
add esp, 0x10
jmp 0x42e6c8
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x43089f
mov ecx, dword [ebp + 0x1c]
push eax
push 0
push ecx
call sub.MSVCR100.dll_memset
add esp, 0xc
mov edx, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x64]
push edx
push 0x4d4c10
call fcn.00449df0
mov esi, dword [ebp + 0x58]
mov edi, eax
test esi, esi
je 0x42e6c0
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x4308d0
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x42e6c0
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
jmp 0x42e6c0
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x430905
push eax
mov eax, dword [ebp + 0x1c]
push 0
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov ecx, dword [ebp + 0x38]
push ecx
mov ecx, dword [ebp + 0x64]
push str.Continuation_section_too_long.
jmp 0x42e6b1
cmp word [ebp - 0x877c], di
je 0x430a2e
mov edx, dword [ebp - 0x18]
mov esi, dword [ebx + 0x24c]
mov dword [ebx + 0x24c], edx
cmp dword [ebp + 0x14], edi
je 0x430968
mov eax, dword [ebp + 0x48]
cmp eax, edi
jbe 0x43094c
push eax
mov eax, dword [ebp + 0x1c]
push edi
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp byte [ebp + 0x63], 0
mov eax, str.Missing___
jne 0x43095c
mov eax, 0x4d4c70
lea ecx, [ebp - 0x877c]
push ecx
jmp 0x42e6ae
push edi
push edi
push edi
push edi
push edi
push 3
lea edx, [ebp - 0x877c]
push edx
mov ecx, ebx
call fcn.004329d0
test eax, eax
jne 0x430a23
mov eax, dword [ebp + 0x48]
test eax, eax
je 0x43099b
push eax
mov eax, dword [ebp + 0x1c]
push 0
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
mov esi, dword [ebp + 0x58]
test esi, esi
je 0x4309cf
mov eax, dword [ebp + 0x5c]
test eax, eax
je 0x4309b5
push eax
push 0
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x4309cf
mov esi, dword [sym.imp.MSVCR100.dll_free]
push eax
call esi
add esp, 4
jmp 0x4309d5
mov esi, dword [sym.imp.MSVCR100.dll_free]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], vtable.TextMem.0
test eax, eax
je 0x4309f6
cmp byte [ebp - 0x24], 0
je 0x4309ef
push eax
call esi
add esp, 4
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], vtable.TextStream.0
test eax, eax
je 0x42e4eb
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov ecx, dword [ebp - 0x30]
push ecx
call esi
add esp, 0x10
jmp 0x42e4eb
mov ebx, dword [ebp + 0x64]
mov dword [ebx + 0x24c], esi
xor edi, edi
mov eax, dword [ebp + 0x48]
cmp eax, edi
jbe 0x430a43
mov edx, dword [ebp + 0x1c]
push eax
push edi
push edx
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [ebx + 0x24], edi
je 0x430a5b
cmp dword [ebp + 4], edi
jne 0x430a5b
lea eax, [ebx + 0x3c]
push eax
push str.Missing___
jmp 0x42e6af
mov esi, dword [ebp + 0x58]
inc dword [ebx + 0x24c]
cmp esi, edi
je 0x42e654
mov eax, dword [ebp + 0x5c]
cmp eax, edi
jbe 0x430a7e
push eax
push edi
push esi
call sub.MSVCR100.dll_memset
add esp, 0xc
cmp dword [esi - 8], 0xdddd
lea eax, [esi - 8]
jne 0x42e654
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
jmp 0x42e654