Function at 0x42bc50
Capabilities:
Get keyboard layout
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4ba5fb
mov eax, dword fs:[0]
push eax
mov eax, 0x1a4d0
mov dword fs:[0], esp
call fcn.004b9d80
push ebx
push ebp
mov ebp, dword [esp + 0x1a4ec]
mov ebx, ecx
push esi
push edi
test ebx, ebx
je 0x42cf14
cmp word [ebx], 0
je 0x42cf14
mov ecx, dword [0x4e9040]
mov eax, dword [0x4e903c]
mov dword [esp + 0xa0], ecx
cmp ecx, eax
jl 0x42bd06
test eax, eax
je 0x42bcba
lea esi, [eax + eax]
cmp esi, 0xffff
jle 0x42bcbf
mov esi, 0xffff
jmp 0x42bcbf
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 0x42bcf6
mov ecx, dword [esp + 0x1a4f0]
push 0x4bd2c4
push 0x4bd2fc
call fcn.00449df0
jmp 0x42cf16
mov edi, eax
mov dword [0x4e9038], edi
mov dword [0x4e903c], esi
jmp 0x42bd0c
mov edi, dword [0x4e9038]
mov esi, dword [esp + 0xa0]
test esi, esi
jne 0x42bd1b
mov dword [edi], ebx
jmp 0x42bd6b
test ebp, ebp
je 0x42bd63
mov eax, ebp
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42bd24
sub eax, edx
sar eax, 1
lea edx, [eax + eax + 2]
push edx
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov dword [edi + esi*4], eax
test eax, eax
je 0x42bcdb
mov ecx, ebp
mov edx, eax
lea esp, [esp]
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x42bd50
jmp 0x42bd6b
mov eax, dword [0x4eacb8]
mov dword [edi + esi*4], eax
lea eax, [esp + 0x124d4]
xor ecx, ecx
inc dword [0x4e9040]
mov dword [esp + 0x28], eax
lea edx, [esp + 0x858c]
mov eax, ebx
mov word [esp + 0x584], cx
mov dword [esp + 0x18], edx
mov dword [0x4e608c], ebx
lea ecx, [eax + 2]
lea esp, [esp]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x42bda0
sub eax, ecx
sar eax, 1
lea ecx, [eax + eax]
lea esi, [esp + 0x3c]
mov dword [0x4e6090], ecx
mov byte [0x4e6094], dl
call fcn.004299d0
xor ebx, ebx
push 0xc
mov eax, 0x4b0
mov edx, 0x4e608c
mov ecx, esi
mov dword [esp + 0x1a4ec], ebx
call fcn.0049c090
mov ecx, dword [esp + 0xa0]
mov edi, dword [esp + 0x1a4f0]
xor eax, eax
xor edx, edx
mov word [esp + 0x9c], ax
mov dword [edi + 0x248], ecx
push ebx
mov eax, esi
lea ecx, [esp + 0x8590]
mov byte [esp + 0x22], bl
mov word [esp + 0x9a], dx
mov dword [esp + 0xbc], ebx
call fcn.00430e50
push 2
lea edx, [esp + 0x8590]
push 0x4d4b2c
push edx
mov dword [esp + 0x38], eax
call dword [sym.imp.MSVCR100.dll_wcsncmp]
add esp, 0xc
test eax, eax
sete al
mov byte [esp + 0x1f], al
test al, al
je 0x42be60
xor eax, eax
mov word [esp + 0x858c], ax
mov dword [esp + 0x2c], ebx
lea esp, [esp]
cmp dword [esp + 0x2c], 0xffffffff
je 0x42dfb1
mov ecx, dword [esp + 0xb8]
mov esi, dword [esp + 0x18]
push 0xc
inc ecx
push str.CommentFlag
push esi
mov dword [edi + 0x24c], ecx
mov dword [edi + 0x648], ebx
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x42bea8
push esi
mov ecx, edi
call fcn.004310b0
test eax, eax
je 0x42c7c5
mov byte [esp + 0xc4], 0
mov dword [esp + 0x20], ebx
mov ebp, dword [sym.imp.MSVCR100.dll_wcsncmp]
mov ebx, dword [esp + 0x28]
inc dword [esp + 0xb8]
test ebx, ebx
je 0x42bf56
mov edi, dword [esp + 0x20]
push edi
lea eax, [esp + 0x40]
mov ecx, ebx
call fcn.00430e50
mov esi, eax
mov dword [esp + 0x30], esi
test esi, esi
je 0x42bf8f
cmp esi, 0xffffffff
je 0x42bf8f
test edi, edi
jne 0x42bf8f
push 2
push 0x4d4b50
push ebx
call ebp
add esp, 0xc
test eax, eax
jne 0x42bf5f
cmp byte [esp + 0x1f], al
jne 0x42bf24
mov eax, 0x3a
cmp word [ebx + 4], ax
jne 0x42bf24
cmp word [ebx + 6], ax
je 0x42bf74
lea edx, [esi + esi - 2]
push edx
lea eax, [ebx + 4]
push eax
push ebx
mov byte [esp + 0x2b], 0
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
lea eax, [esi - 2]
mov edi, ebx
call fcn.00426820
cmp word [ebx], 0
mov dword [esp + 0x30], eax
je 0x42beb4
jmp 0x42bf74
or eax, 0xffffffff
mov dword [esp + 0x30], eax
jmp 0x42bf93
cmp byte [esp + 0x1f], 0
jne 0x42beb4
mov ebx, dword [esp + 0x28]
mov ebp, dword [sym.imp.MSVCR100.dll_wcsncmp]
push 2
push 0x4d4b2c
push ebx
call ebp
add esp, 0xc
test eax, eax
jne 0x42bf8f
mov byte [esp + 0x1f], 1
jmp 0x42bebe
mov eax, dword [esp + 0x30]
cmp byte [esp + 0x1f], 0
je 0x42bfa8
cmp eax, 0xffffffff
jne 0x42bebe
jmp 0x42c6f2
cmp dword [esp + 0x20], 0
jne 0x42c4c9
cmp eax, 0xffffffff
je 0x42c02c
cmp word [ebx], 0x28
jne 0x42c02c
cmp word [ebx + 2], 0x3a
lea esi, [ebx + 2]
je 0x42c02c
mov ecx, dword [esp + 0x30]
cmp word [ebx + ecx*2 - 2], 0x3a
je 0x42c02c
mov dl, byte [0x4e86ee]
mov eax, 1
mov dword [esp + 0x20], eax
mov dword [esp + 0xbc], 0
mov byte [esp + 0x37], dl
mov byte [esp + 0x3a], al
mov byte [esp + 0x39], 0
mov byte [esp + 0x36], 0
mov byte [esp + 0x3b], al
mov dword [esp + 0xdc], 0xa
mov dword [esp + 0xb4], eax
movzx eax, word [esi]
cmp eax, 0x20
je 0x42c027
cmp eax, 9
jne 0x42c297
add esi, 2
jmp 0x42c016
mov eax, dword [esp + 0x30]
mov dword [esp + 0x20], 0
cmp eax, 0xffffffff
je 0x42c6f2
test eax, eax
je 0x42bebe
cmp word [ebx + eax*2 - 2], 0x3a
jne 0x42c05b
cmp word [ebx], 0x2c
jne 0x42c6f2
movzx esi, word [ebx]
test esi, 0xffffff80
jne 0x42c079
push 2
push esi
call dword [sym.imp.MSVCR100.dll__isctype]
add esp, 8
test eax, eax
je 0x42c079
and esi, 0xffffffdf
movzx eax, si
cmp eax, 0x41
je 0x42c1fe
cmp eax, 0x4f
je 0x42c1cb
movzx eax, word [ebx]
cmp eax, 0x3a
je 0x42c0a0
cmp eax, 0x2b
je 0x42c0a0
cmp eax, 0x2d
jne 0x42c0aa
cmp word [ebx + 2], ax
je 0x42c6f2
push eax
push str.____:.___
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
je 0x42c6f2
push 0x4d4b98
push ebx
call dword [sym.imp.MSVCR100.dll_wcsstr]
mov edi, eax
add esp, 8
test edi, edi
je 0x42c24b
cmp word [ebx], 0x3a
jne 0x42c134
movzx eax, word [ebx + 2]
lea esi, [ebx + 2]
test ax, ax
je 0x42c12a
lea esp, [esp]
cmp ax, 0x3a
je 0x42c6f2
mov ecx, 0x107
call fcn.00405570
test eax, eax
jne 0x42c11e
movzx edx, word [esi]
push edx
push 0x4d4ba0
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
je 0x42c134
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x42c0f0
cmp word [esi], 0x3a
je 0x42c6f2
cmp word [ebx], 0x2c
jne 0x42c176
lea eax, [ebx + 2]
call fcn.00413050
push 2
mov esi, eax
push 0x4d4b98
push esi
call ebp
add esp, 0xc
test eax, eax
je 0x42c6f2
push 3
push 0x4bfce4
add esi, 0xfffffffe
push esi
call ebp
add esp, 0xc
test eax, eax
je 0x42c6f2
jmp 0x42c24b
mov eax, ebx
cmp ebx, edi
jae 0x42c18d
lea esp, [esp]
cmp word [eax], 0x22
je 0x42c18d
add eax, 2
cmp eax, edi
jb 0x42c180
cmp eax, edi
je 0x42c6f2
movzx eax, word [edi + 4]
lea ecx, [edi + 4]
test ax, ax
je 0x42c6f2
cmp ax, 0x22
je 0x42c1bc
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
jne 0x42c1a5
jmp 0x42c6f2
cmp word [ecx], 0
je 0x42c6f2
jmp 0x42c24b
mov ax, word [ebx + 2]
call fcn.00413020
cmp ax, 0x52
jne 0x42c6f2
movzx ecx, word [ebx + 4]
lea eax, [ebx + 4]
cmp ecx, 0x20
je 0x42c1f3
cmp ecx, 9
jne 0x42c6f2
call fcn.00413050
movzx eax, word [eax]
push eax
jmp 0x42c235
push 3
push 0x4d4b58
push ebx
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x42c6f2
movzx ecx, word [ebx + 6]
lea eax, [ebx + 6]
cmp ecx, 0x20
je 0x42c22c
cmp ecx, 9
jne 0x42c6f2
call fcn.00413050
movzx ecx, word [eax]
push ecx
push 0x4d4b60
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
jne 0x42c6f2
mov edi, dword [esp + 0x30]
mov esi, dword [esp + 0x2c]
lea edx, [edi + esi]
cmp edx, 0x4000
jae 0x42db5d
cmp word [ebx], 0x2c
je 0x42c276
mov ecx, dword [esp + 0x18]
mov eax, 0x20
mov word [ecx + esi*2], ax
inc esi
mov eax, dword [esp + 0x18]
lea edx, [edi + edi + 2]
push edx
lea ecx, [eax + esi*2]
push ebx
push ecx
call sub.MSVCR100.dll_memcpy
add esp, 0xc
add esi, edi
mov dword [esp + 0x2c], esi
jmp 0x42bebe
cmp word [esi], 0
je 0x42c4bc
mov edi, dword [sym.imp.MSVCR100.dll__wcsnicmp]
jmp 0x42c2b0
mov ebx, 0x4bfcf4
mov eax, esi
call fcn.00405590
mov ebp, eax
test ebp, ebp
jne 0x42c2d9
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42c2c7
sub eax, edx
sar eax, 1
lea ebp, [esi + eax*2]
movzx ebx, word [ebp]
push 4
xor eax, eax
push str.Join
push esi
mov dword [esp + 0xb4], ebx
mov word [ebp], ax
call edi
add esp, 0xc
test eax, eax
jne 0x42c40e
push 0xf
add esi, 8
lea ecx, [esp + 0xe0]
push esi
push ecx
call dword [sym.imp.MSVCR100.dll_wcsncpy]
movzx ebx, word [0x4e4a50]
add esp, 0xc
xor edx, edx
mov word [esp + 0xfa], dx
lea ecx, [esp + 0xdc]
mov edi, edi
movzx eax, word [ecx]
test ax, ax
je 0x42c349
cmp ax, bx
je 0x42c375
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
jne 0x42c338
lea eax, [esp + 0xdc]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42c353
mov ebx, dword [esp + 0xa8]
sub eax, edx
sar eax, 1
mov dword [esp + 0xb4], eax
jmp 0x42c495
cmp word [ecx], 0
je 0x42c349
movzx eax, word [ecx + 2]
lea esi, [ecx + 2]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x42c391.99
movzx eax, byte [eax + 0x42e078]
jmp dword [eax*4 + 0x42e054]
mov edx, 7
mov word [esi], dx
jmp case.0x42c391.99
mov eax, 8
jmp 0x42c3da
mov edx, 0xc
mov word [esi], dx
jmp case.0x42c391.99
mov eax, 0xa
jmp 0x42c3da
mov edx, 0xd
mov word [esi], dx
jmp case.0x42c391.99
mov eax, 9
jmp 0x42c3da
mov edx, 0xb
mov word [esi], dx
jmp case.0x42c391.99
mov eax, 0x20
mov word [esi], ax
mov eax, esi
lea edi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x42c3e2
sub eax, edi
sar eax, 1
lea edx, [eax + eax + 2]
push edx
push esi
push ecx
call dword [sym.imp.MSVCR100.dll_memmove]
mov edi, dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
mov ecx, esi
jmp 0x42c330
push 5
push 0x4d4bf8
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x42c42e
cmp word [esi + 0xa], 0x30
setne byte [esp + 0x37]
jmp 0x42c495
push 5
push str.RTrim
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x42c44b
cmp word [esi + 0xa], 0x30
setne byte [esp + 0x3a]
jmp 0x42c495
movzx eax, word [esi]
test ax, ax
je 0x42c495
movzx eax, ax
add eax, 0xffffffdb
cmp eax, 0x3e
ja case.0x42c465.38
movzx eax, byte [eax + 0x42e0a8]
jmp dword [eax*4 + 0x42e090]
mov byte [esp + 0x39], 1
jmp case.0x42c465.38
mov byte [esp + 0x36], 1
jmp case.0x42c465.38
mov byte [esp + 0x3b], 0
jmp case.0x42c465.38
mov dword [esp + 0x20], 2
movzx eax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x42c453
mov word [ebp], bx
mov esi, ebp
jmp 0x42c4a0
movzx eax, word [esi]
cmp eax, 0x20
je 0x42c4ad
cmp eax, 9
jne 0x42c4b2
add esi, 2
jmp 0x42c4a0
cmp word [esi], 0
jne 0x42c2b0
mov byte [esp + 0xc4], 1
jmp 0x42beb4
cmp eax, 0xffffffff
je 0x42df3b
cmp eax, 0xfffffffe
je 0x42bebe
cmp word [ebx], 0x29
jne 0x42c504
mov esi, dword [esp + 0x28]
or eax, 0xffffffff
mov dword [esp + 0x20], 0
lea ebx, [esi + 2]
call fcn.00426890
dec eax
mov dword [esp + 0x30], eax
mov edi, eax
jmp 0x42c661
cmp byte [esp + 0x3a], 0
mov ebx, dword [esp + 0x28]
je 0x42c522
mov eax, dword [esp + 0x30]
mov esi, ebx
call fcn.00426890
mov edi, eax
mov dword [esp + 0x30], edi
jmp 0x42c526
mov edi, dword [esp + 0x30]
cmp byte [esp + 0x37], 0
je 0x42c540
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x28]
call fcn.00426820
mov dword [esp + 0x30], eax
mov edi, eax
xor esi, esi
cmp byte [esp + 0x39], 0
je 0x42c592
mov ax, word [0x4e4a50]
push esi
push 0xffffffffffffffff
push 1
lea ecx, [esp + 0xa4]
push ecx
mov word [esp + 0xa4], ax
mov word [esp + 0xa8], ax
mov word [esp + 0xaa], ax
mov eax, dword [esp + 0x38]
lea edx, [esp + 0xa4]
push edx
push eax
xor eax, eax
mov ecx, 0x4001
call fcn.0049ede0
add esp, 0x18
mov esi, eax
cmp byte [esp + 0x36], 0
je 0x42c5ea
mov ax, word [0x4e4a4c]
mov cx, word [0x4e4a50]
push 0
push 0xffffffffffffffff
push 1
mov word [esp + 0xa0], ax
mov word [esp + 0xa6], ax
lea edx, [esp + 0xa4]
push edx
mov word [esp + 0xa8], cx
mov ecx, dword [esp + 0x38]
lea eax, [esp + 0xa4]
push eax
push ecx
xor eax, eax
mov ecx, 0x4001
call fcn.0049ede0
add esp, 0x18
add esi, eax
cmp byte [esp + 0x3b], 0
je 0x42c642
mov ax, word [0x4e4a48]
mov dx, word [0x4e4a50]
push 0
push 0xffffffffffffffff
mov word [esp + 0x9c], ax
mov word [esp + 0xa2], ax
push 1
lea eax, [esp + 0xa4]
push eax
lea ecx, [esp + 0xa4]
mov word [esp + 0xa8], dx
mov edx, dword [esp + 0x38]
push ecx
push edx
xor eax, eax
mov ecx, 0x4001
call fcn.0049ede0
add esp, 0x18
add esi, eax
test esi, esi
je 0x42c661
mov eax, dword [esp + 0x28]
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42c650
sub eax, edx
sar eax, 1
mov edi, eax
mov eax, dword [esp + 0xb4]
mov esi, dword [esp + 0x2c]
lea ecx, [eax + edi]
add ecx, esi
cmp ecx, 0x4001
jae 0x42db5d
mov ecx, dword [esp + 0xbc]
inc ecx
mov dword [esp + 0xbc], ecx
cmp ecx, 1
jle 0x42c6c5
test eax, eax
je 0x42c6c5
cmp ebx, dword [esp + 0x28]
jne 0x42c6c5
mov edx, eax
lea eax, [edx + edx + 2]
mov edx, dword [esp + 0x18]
push eax
lea ecx, [esp + 0xe0]
push ecx
lea eax, [edx + esi*2]
push eax
call sub.MSVCR100.dll_memcpy
add esp, 0xc
add esi, dword [esp + 0xb4]
mov dword [esp + 0x2c], esi
test edi, edi
je 0x42beba
mov edx, dword [esp + 0x18]
lea ecx, [edi + edi + 2]
push ecx
lea eax, [edx + esi*2]
push ebx
push eax
call sub.MSVCR100.dll_memcpy
add esp, 0xc
add esi, edi
mov dword [esp + 0x2c], esi
jmp 0x42beba
mov word [ebp], bx
cmp dword [esp + 0x2c], 0
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x1a4f0]
lea esp, [esp]
je case.0x42d3f2.14
cmp word [esp + 0x584], 0
je 0x42c898
mov ecx, dword [esp + 0xa4]
mov edi, dword [ebp + 0x24c]
mov dword [ebp + 0x24c], ecx
cmp word [esi], 0x7b
je 0x42c784
cmp byte [esp + 0x1d], 0
jne 0x42c784
test ebx, ebx
jne 0x42db81
cmp dword [ebp + 0x24], ebx
je 0x42c764
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], ebx
je 0x42dbf5
push 0
push 0
push 0
push 0
push 0
push 3
lea eax, [esp + 0x59c]
push eax
mov ecx, ebp
call fcn.004329d0
jmp 0x42c815
mov eax, ebx
sub eax, 0
je 0x42c7d3
dec eax
je 0x42c7b3
dec eax
jne 0x42c823
push ebp
lea ebx, [esp + 0x588]
call fcn.00439730
test eax, eax
je 0x42c7c5
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x84]
jmp 0x42c823
lea ecx, [esp + 0x584]
push ecx
push ebp
call fcn.00439240
test eax, eax
jne 0x42c823
lea ecx, [esp + 0x3c]
call fcn.00429a30
jmp 0x42cf14
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], 0
jne 0x42dc18
lea eax, [esp + 0x10594]
push eax
lea ecx, [esp + 0x588]
push ecx
push ebp
call fcn.00438710
test eax, eax
je 0x42c7c5
cmp byte [esp + 0x1d], 0
je 0x42c823
push 0
push 0
push 0
push 0x75
push ebp
call fcn.00434ec0
test eax, eax
je 0x42c7c5
mov dword [ebp + 0x648], 0
xor edx, edx
mov word [esp + 0x584], dx
test ebx, ebx
je 0x42c892
cmp byte [esp + 0x1d], dl
jne 0x42c892
lea ecx, [esi + 2]
lea ebx, [ebx]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42c84d
cmp eax, 9
jne 0x42c852
add ecx, 2
jmp 0x42c840
cmp word [ecx], dx
jne 0x42c862
mov dword [ebp + 0x24c], edi
jmp 0x42d90c
mov eax, ecx
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x42c867
sub eax, esi
sar eax, 1
mov dword [esp + 0x2c], eax
lea eax, [eax + eax + 2]
push eax
push ecx
mov ecx, dword [esp + 0x20]
push ecx
call dword [sym.imp.MSVCR100.dll_memmove]
mov esi, dword [esp + 0x24]
add esp, 0xc
mov dword [ebp + 0x24c], edi
cmp word [esi], 0x7d
jne 0x42c9a9
cmp dword [ebp + 0x24], 0
je 0x42c9a9
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], 0
jne 0x42c9a9
mov ebx, dword [esp + 0x18]
xor esi, esi
cmp dword [ebp + 0x240], esi
je 0x42c904
mov eax, dword [ebp + 0x244]
mov dword [ebp + 0x240], esi
cmp eax, esi
je 0x42c8ed
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [ebp + 0x244], esi
lea ecx, [ebx + 2]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42c8fd
cmp eax, 9
jne 0x42c902
add ecx, 2
jmp 0x42c8f0
mov ebx, ecx
cmp word [ebx], 0x7d
jne 0x42c96f
lea ebx, [ebx]
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x42c96f
dec eax
mov dword [ebp + 0x24], eax
mov edi, dword [ebp + eax*4 + 0x28]
call fcn.0048f610
mov eax, dword [ebp + 0x24]
mov eax, dword [ebp + eax*4 + 0x28]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea esi, [ebp + 0x3c]
push 0x2e
push esi
call dword [sym.imp.MSVCR100.dll_wcsrchr]
add esp, 8
test eax, eax
je 0x42c94d
xor ecx, ecx
mov word [eax], cx
jmp 0x42c952
xor edx, edx
mov word [esi], dx
lea eax, [ebx + 2]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42c962
cmp ecx, 9
jne 0x42c967
add eax, 2
jmp 0x42c955
cmp word [eax], 0x7d
mov ebx, eax
je 0x42c910
cmp word [ebx], 0
je 0x42d90c
mov eax, ebx
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42c980
mov ecx, dword [esp + 0x18]
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
add eax, eax
push eax
push ebx
push ecx
call dword [sym.imp.MSVCR100.dll_memmove]
mov esi, dword [esp + 0x24]
add esp, 0xc
cmp dword [ebp + 0x240], 0
je 0x42ca8f
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], 0
jne 0x42ca8f
mov edi, dword [sym.imp.MSVCR100.dll__wcsnicmp]
push 3
push 0x4d4cec
push esi
call edi
add esp, 0xc
test eax, eax
je 0x42c9f5
push 3
push 0x4d4cf4
push esi
call edi
add esp, 0xc
test eax, eax
jne 0x42dc2c
mov edi, dword [esp + 0x18]
lea esi, [edi + 6]
lea esp, [esp]
movzx eax, word [esi]
cmp eax, 0x20
je 0x42ca0d
cmp eax, 9
jne 0x42ca12
add esi, 2
jmp 0x42ca00
movzx eax, word [esi]
test ax, ax
je 0x42ca2e
cmp eax, 0x7b
jne 0x42dc30
cmp word [esi + 2], 0
jne 0x42dc30
mov eax, dword [ebp + 0x244]
lea edx, [esp + 0x584]
sub edx, eax
lea ecx, [ecx]
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x42ca40
lea eax, [esp + 0x584]
push 0x2e
push eax
call dword [sym.imp.MSVCR100.dll_wcschr]
mov cx, word [edi]
mov word [eax + 2], cx
mov edx, dword [ebp + 0x24c]
add esp, 8
cmp word [esi], 0x7b
mov dword [esp + 0xa4], edx
sete byte [esp + 0x1d]
mov dword [esp + 0x84], 0
jmp 0x42d90c
lea eax, [esp + 0x1d]
push eax
mov eax, esi
call fcn.0042baf0
add esp, 4
test al, al
je 0x42cadc
lea edx, [esp + 0x584]
mov eax, esi
sub edx, esi
lea ecx, [ecx]
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x42cab0
mov ecx, dword [ebp + 0x24c]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x84], 0
jmp 0x42d90c
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], 0
jne 0x42ccbd
lea eax, [esp + 0x1d]
push eax
mov eax, esi
call fcn.0042bbb0
add esp, 4
test eax, eax
je 0x42cb3c
lea edx, [esp + 0x584]
sub edx, eax
jmp 0x42cb10
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x42cb10
mov ecx, dword [ebp + 0x24c]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x84], 1
jmp 0x42d90c
cmp dword [ebp + 0x24], 0
je 0x42ccbd
mov ebx, dword [esp + 0x18]
mov edi, dword [sym.imp.MSVCR100.dll__isctype]
mov esi, ebx
movzx eax, word [esi]
test eax, 0xffffff80
jne 0x42cb6b
push 0x107
push eax
call edi
add esp, 8
test eax, eax
jne 0x42cb78
movzx eax, word [esi]
cmp eax, 0x5f
je 0x42cb78
cmp eax, 0x2e
jne 0x42cb7d
add esi, 2
jmp 0x42cb52
cmp esi, ebx
jbe 0x42cc3c
movzx eax, word [esi]
cmp eax, 0x20
je 0x42cb92
cmp eax, 9
jne 0x42cb97
add esi, 2
jmp 0x42cb85
movzx eax, word [esi]
cmp eax, 0x3a
jne 0x42cbbc
cmp word [esi + 2], 0x3d
jne 0x42cbbc
push 0
push ebx
push ebp
call fcn.004398c0
test eax, eax
je 0x42c7c5
jmp 0x42d90c
test ax, ax
je 0x42cbd2
cmp eax, 0x5b
je 0x42cbd2
cmp eax, 0x7b
jne 0x42cc3c
cmp word [esi + 2], 0
jne 0x42cc3c
mov eax, ebx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42cbd7
sub eax, edx
sar eax, 1
cmp word [ebx + eax*2 - 2], 0x7b
sete cl
mov byte [esp + 0x1d], cl
test cl, cl
je 0x42cbff
dec eax
mov esi, ebx
call fcn.00426890
lea edx, [esp + 0x584]
mov eax, ebx
sub edx, ebx
lea ebx, [ebx]
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x42cc10
mov edx, dword [ebp + 0x24c]
mov dword [esp + 0xa4], edx
mov dword [esp + 0x84], 2
jmp 0x42d90c
push 6
push str.Static
push ebx
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x42cc78
movzx eax, word [ebx + 0xc]
cmp eax, 0x20
je 0x42cc5f
cmp eax, 9
jne 0x42cc78
push 1
add ebx, 0xe
push ebx
push ebp
call fcn.004398c0
test eax, eax
je 0x42c7c5
jmp 0x42d90c
cmp word [ebx], 0x23
jne 0x42dca1
mov esi, dword [ebp + 0x24c]
push ebx
mov ecx, ebp
call fcn.004310b0
test eax, eax
je 0x42c7c5
cmp eax, 3
jne 0x42dca1
mov eax, dword [esp + 0xa0]
mov dword [ebp + 0x248], eax
mov dword [ebp + 0x24c], esi
jmp 0x42d90c
mov esi, dword [esp + 0x18]
xor ebx, ebx
cmp word [esi], 0x3a
mov dword [esp + 0x90], ebx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0x20], ebx
jne 0x42cd76
movzx ecx, word [esi + 2]
lea eax, [esi + 2]
cmp cx, bx
je 0x42cd76
cmp ecx, 0x3a
je 0x42cd15
push 0x3a
push eax
mov dword [esp + 0xb0], eax
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
cmp eax, ebx
jne 0x42cd10
mov dword [esp + 0x90], ebx
jmp 0x42cd76
add eax, 2
jmp 0x42cd1e
cmp word [esi + 4], bx
lea eax, [esi + 4]
je 0x42cd76
mov dword [esp + 0x90], eax
cmp eax, ebx
je 0x42cd76
mov edi, eax
jmp 0x42cd30
movzx eax, word [edi]
test ax, ax
je 0x42cd63
jmp 0x42cd40
cmp ax, word [0x4e4a50]
je 0x42cde6
cmp ax, 0x3a
je 0x42cde6
movzx eax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x42cd40
test ebx, ebx
jne 0x42cf42
mov esi, dword [esp + 0x18]
mov dword [esp + 0x90], ebx
push 0x4d4b98
push esi
call dword [sym.imp.MSVCR100.dll_wcsstr]
mov ebp, eax
add esp, 8
mov dword [esp + 0x20], ebp
test ebp, ebp
je 0x42d75c
mov ecx, dword [esp + 0x18]
cmp ebp, ecx
jne 0x42cda9
cmp word [ebp + 4], 0x3a
jne 0x42cda9
add ebp, 2
mov dword [esp + 0x20], ebp
mov esi, ebp
cmp ebp, ecx
jbe 0x42cdc4
nop
movzx eax, word [esi]
cmp eax, 0x20
je 0x42cdbd
cmp eax, 9
jne 0x42cdc4
sub esi, 2
cmp esi, ecx
ja 0x42cdb0
movzx edi, word [esi]
xor edx, edx
mov word [esi], dx
lea esp, [esp]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42cde1
cmp eax, 9
jne 0x42cea5
add ecx, 2
jmp 0x42cdd0
movzx eax, word [edi]
test ax, ax
je 0x42cd63
lea esi, [edi + 2]
cmp eax, 0x3a
jne 0x42ce13
cmp word [esi], ax
jne 0x42ce9d
mov ebx, edi
mov edi, esi
mov dword [esp + 0x20], ebx
add edi, 2
jmp 0x42cd30
movzx eax, word [esi]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x42ce25.99
movzx ecx, byte [eax + 0x42e108]
jmp dword [ecx*4 + 0x42e0e8]
mov edx, 7
jmp 0x42ce67
mov eax, 8
mov word [esi], ax
jmp case.0x42ce25.99
mov ecx, 0xc
mov word [esi], cx
jmp case.0x42ce25.99
mov edx, 0xa
jmp 0x42ce67
mov eax, 0xd
mov word [esi], ax
jmp case.0x42ce25.99
mov ecx, 9
mov word [esi], cx
jmp case.0x42ce25.99
mov edx, 0xb
mov word [esi], dx
mov eax, esi
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42ce70
sub eax, edx
sar eax, 1
lea eax, [eax + eax + 2]
push eax
push esi
push edi
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
cmp word [edi], 0x3a
jne 0x42ce9d
cmp word [esi], 0x3a
jne 0x42ce9d
mov edi, esi
add edi, 2
jmp 0x42cd30
push 0
push ecx
xor ebx, ebx
call fcn.004154b0
add esp, 8
mov dword [esp + 0xc8], eax
test eax, eax
je 0x42cf31
cmp eax, 4
jne 0x42cf37
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42cee6
cmp byte [esp + 0x78], bl
je 0x42cee2
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42cf14
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov ecx, dword [esp + 0x78]
add esp, 0xc
push ecx
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x1a4e0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x1a4dc
ret 8
xor ebp, ebp
mov dword [esp + 0x20], ebp
mov word [esi], di
test ebp, ebp
je 0x42d75c
mov ebp, dword [esp + 0x18]
cmp dword [esp + 0x20], ebp
jbe 0x42d760
mov eax, dword [0x4e4b24]
cmp dword [eax + 0xb4], 0
jne 0x42dcae
mov edi, dword [esp + 0x1a4f0]
mov eax, dword [edi + 0x610]
test eax, eax
je 0x42cf7c
cmp byte [eax], 0x1a
je 0x42dcc0
mov ebx, dword [esp + 0x20]
xor ecx, ecx
mov word [ebx], cx
add ebx, 4
mov dword [esp + 0x20], ebx
cmp dword [esp + 0x90], ecx
jne 0x42d442
cmp word [ebx], cx
je 0x42cfdf
mov ecx, ebx
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42cfad
cmp eax, 9
jne 0x42cfb2
add ecx, 2
jmp 0x42cfa0
mov edx, ecx
sub edx, ebx
sar edx, 1
je 0x42cfdf
mov eax, ecx
lea esi, [eax + 2]
nop
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x42cfc0
sub eax, esi
sar eax, 1
lea eax, [eax + eax + 2]
push eax
push ecx
push ebx
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
cmp word [ebp], 0
je 0x42d033
mov eax, ebp
lea edx, [eax + 2]
jmp 0x42cff0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42cff0
sub eax, edx
sar eax, 1
lea eax, [ebp + eax*2 - 2]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42d010
cmp ecx, 9
jne 0x42d019
cmp eax, ebp
je 0x42d021
sub eax, 2
jmp 0x42d003
xor ecx, ecx
mov word [eax + 2], cx
jmp 0x42d033
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42d02e
cmp ecx, 9
jne 0x42d033
xor edx, edx
mov word [eax], dx
mov eax, dword [esp + 0x20]
cmp word [eax], 0
mov ebp, eax
je 0x42d43a
movzx edi, word [eax + 2]
test di, di
je 0x42d1b7
mov esi, eax
lea ebx, [eax + 2]
xor dl, dl
mov eax, edi
mov edi, dword [esp + 0xac]
xor cl, cl
cmp ax, 0x20
je case.0x42d082.34
movzx eax, word [esi]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x42d082.34
movzx eax, byte [eax + 0x42e140]
jmp dword [eax*4 + 0x42e120]
mov cl, 1
jmp case.0x42d082.36
mov dl, 1
jmp case.0x42d082.36
test cl, cl
jne 0x42d0a7
test dl, dl
jne 0x42d0ab
or edi, 1
jmp case.0x42d082.36
test dl, dl
je 0x42d0b2
or byte [esp + 0x17], 4
xor dl, dl
test cl, cl
je case.0x42d082.36
or byte [esp + 0x17], 8
jmp 0x42d128
test cl, cl
jne 0x42d0ce
test dl, dl
jne 0x42d0d2
or edi, 2
jmp case.0x42d082.36
test dl, dl
je 0x42d0d9
or byte [esp + 0x17], 1
xor dl, dl
test cl, cl
je case.0x42d082.36
or byte [esp + 0x17], 2
jmp 0x42d128
test cl, cl
jne 0x42d0f1
test dl, dl
jne 0x42d0f5
or edi, 4
jmp case.0x42d082.36
test dl, dl
je 0x42d0fc
or byte [esp + 0x17], 0x10
xor dl, dl
test cl, cl
je case.0x42d082.36
or byte [esp + 0x17], 0x20
jmp 0x42d128
test cl, cl
jne 0x42d114
test dl, dl
jne 0x42d118
or edi, 8
jmp case.0x42d082.36
test dl, dl
je 0x42d11f
or byte [esp + 0x17], 0x40
xor dl, dl
test cl, cl
je case.0x42d082.36
or byte [esp + 0x17], 0x80
xor cl, cl
mov esi, ebx
movzx eax, word [esi + 2]
lea ebx, [esi + 2]
test ax, ax
jne 0x42d062
push 0
mov dword [esp + 0xb0], edi
mov ebp, esi
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push 0
push 0
mov eax, esi
call fcn.0041c480
add esp, 0xc
mov byte [esp + 0x1e], al
test al, al
je 0x42d433
mov eax, dword [esp + 0x18]
cmp word [eax], 0
je case.0x42d1b0.34
movzx esi, word [eax + 2]
lea ecx, [eax + 2]
xor bl, bl
xor dl, dl
test si, si
je case.0x42d1b0.34
mov edi, ecx
mov ecx, esi
mov edi, edi
cmp cx, 0x20
je case.0x42d1b0.34
movzx ecx, word [eax]
add ecx, 0xffffffdf
cmp ecx, 0x5d
ja case.0x42d1b0.34
movzx ecx, byte [ecx + 0x42e1c0]
jmp dword [ecx*4 + 0x42e1a0]
mov byte [esp + 0x1e], 0xff
jmp 0x42d168
mov dl, 1
jmp case.0x42d1b0.36
mov bl, 1
jmp case.0x42d1b0.36
test dl, dl
jne 0x42d1e1
test bl, bl
jne 0x42d1e5
or dword [esp + 0x88], 1
jmp case.0x42d1b0.36
test bl, bl
je 0x42d1ec
or byte [esp + 0x16], 4
xor bl, bl
test dl, dl
je case.0x42d1b0.36
or byte [esp + 0x16], 8
jmp 0x42d274
test dl, dl
jne 0x42d210
test bl, bl
jne 0x42d214
or dword [esp + 0x88], 2
jmp case.0x42d1b0.36
test bl, bl
je 0x42d21b
or byte [esp + 0x16], 1
xor bl, bl
test dl, dl
je case.0x42d1b0.36
or byte [esp + 0x16], 2
jmp 0x42d274
test dl, dl
jne 0x42d238
test bl, bl
jne 0x42d23c
or dword [esp + 0x88], 4
jmp case.0x42d1b0.36
test bl, bl
je 0x42d243
or byte [esp + 0x16], 0x10
xor bl, bl
test dl, dl
je case.0x42d1b0.36
or byte [esp + 0x16], 0x20
jmp 0x42d274
test dl, dl
jne 0x42d260
test bl, bl
jne 0x42d264
or dword [esp + 0x88], 8
jmp case.0x42d1b0.36
test bl, bl
je 0x42d26b
or byte [esp + 0x16], 0x40
xor bl, bl
test dl, dl
je case.0x42d1b0.36
or byte [esp + 0x16], 0x80
xor dl, dl
mov eax, edi
movzx ecx, word [eax + 2]
lea edi, [eax + 2]
test cx, cx
jne 0x42d190
push 0
mov esi, eax
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push 0
push 0
mov eax, esi
call fcn.0041c480
add esp, 0xc
push 0x4bfce4
push esi
mov byte [esp + 0x2e], al
call dword [sym.imp.MSVCR100.dll_wcsstr]
mov dl, byte [esp + 0x2e]
add esp, 8
test eax, eax
setne bl
dec dl
cmp dl, 5
ja 0x42d2cb
cmp byte [esp + 0x26], 3
jne 0x42d2d5
mov al, byte [esp + 0x26]
add al, 0x66
cmp al, 5
ja 0x42d2d9
mov cl, 1
jmp 0x42d2db
xor cl, cl
mov al, byte [esp + 0x1e]
lea edx, [eax - 1]
cmp dl, 5
ja 0x42d2eb
cmp al, 3
jne 0x42d2f1
add al, 0x66
cmp al, 5
ja 0x42d2f8
mov byte [esp + 0x27], 1
jmp 0x42d2fd
mov byte [esp + 0x27], 0
test cl, cl
jne 0x42d30c
mov byte [esp + 0x38], 1
cmp byte [esp + 0x27], cl
jne 0x42d311
mov byte [esp + 0x38], 0
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42d316
sub eax, edx
sar eax, 1
cmp eax, 1
jne 0x42d33d
movzx eax, word [esi]
push eax
call dword [sym.imp.USER32.dll_IsCharUpperW]
mov ecx, 0x4d4de4
test eax, eax
jne 0x42d342
mov ecx, 0x4bd2c4
mov eax, 0x4bd2c4
test bl, bl
jne 0x42d350
mov eax, 0x4d4acc
mov edx, dword [esp + 0x18]
push edx
push ecx
push eax
push 0x4d4de8
mov esi, 0x20
lea edi, [esp + 0x14c]
call fcn.0049e5c0
mov edi, dword [sym.imp.MSVCR100.dll_wcsncpy]
push 0x1f
lea eax, [esp + 0x110]
push ebp
push eax
call edi
mov esi, dword [esp + 0x3c]
add esp, 0x1c
push 7
lea edx, [esp + 0xd0]
xor ecx, ecx
push esi
push edx
mov word [esp + 0x146], cx
call edi
xor eax, eax
sub ebp, esi
mov word [esp + 0xe6], ax
mov eax, ebp
sar eax, 1
add esp, 0xc
cmp eax, 8
jae 0x42d3c0
xor ecx, ecx
mov word [esp + eax*2 + 0xcc], cx
cmp word [esp + 0xcc], 0
mov dword [esp + 0xb0], 0
jne case.0x42d3f2.14
movzx eax, byte [esp + 0x1e]
add eax, 0xfffffff3
cmp eax, 0x52
ja case.0x42d3f2.14
movzx edx, byte [eax + 0x42e230]
jmp dword [edx*4 + 0x42e220]
mov eax, dword [esp + 0x20]
mov ebx, 0x4c01ac
call fcn.00405590
test eax, eax
jne case.0x42d3f2.19
jmp case.0x42d3f2.14
lea eax, [esp + 0xfc]
push str.Return
push eax
call dword [sym.imp.MSVCR100.dll__wcsicmp]
add esp, 8
test eax, eax
jne case.0x42d3f2.14
mov byte [esp + 0x1e], 0
mov edi, dword [esp + 0x1a4f0]
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
cmp byte [edi + 0x250], 0
je 0x42d471
xor esi, esi
push esi
push 0xff
push esi
push 0x67
push edi
mov byte [edi + 0x250], 0
call fcn.00434ec0
test eax, eax
je 0x42dd37
mov dword [edi + 0x648], esi
push 1
mov eax, ebp
mov esi, edi
call fcn.00432860
test eax, eax
je 0x42d548
mov ecx, dword [esp + 0x90]
test ecx, ecx
je 0x42d59f
cmp word [ecx], 0
je 0x42dd89
mov eax, dword [esp + 0xa8]
test eax, eax
jne 0x42d4ad
mov eax, 0x4bd2c4
mov edx, dword [esp + 0xc4]
push 0
push edx
mov edx, dword [edi + 0x620]
push ebx
push eax
push ecx
mov eax, esp
mov dword [eax], edx
mov eax, dword [edi + 0x620]
mov edx, dword [eax + 4]
mov dword [esp + 0xbc], esp
push edx
mov edi, ecx
call fcn.004166f0
add esp, 0x18
test eax, eax
je 0x42ddc2
cmp word [ebx], 0
je case.0x42d3f2.14
mov eax, dword [0x4e898c]
mov ecx, dword [0x4e8990]
mov edx, dword [eax + ecx*4 - 4]
cmp byte [edx + 0x2d], 0
je 0x42d52b
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1a4f0]
push 0
push 0
push 0
push 0
push 0
push 0
push eax
call fcn.004329d0
test eax, eax
je 0x42c7c5
mov ecx, dword [esp + 0x1a4f0]
push 0
push 0
push 0
push 0x67
push ecx
call fcn.00434ec0
test eax, eax
jne case.0x42d3f2.14
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42d571
cmp byte [esp + 0x78], 0
je 0x42d569
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42cf14
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov eax, dword [esp + 0x78]
add esp, 0xc
push eax
jmp 0x42cf0b
xor esi, esi
cmp word [ebx], si
je 0x42d64c
mov esi, dword [sym.imp.MSVCR100.dll__wcsicmp]
push str.AltTab
push ebx
call esi
add esp, 8
test eax, eax
jne 0x42d5c6
mov esi, 0x7ffe
jmp 0x42d636
push str.ShiftAltTab
push ebx
call esi
add esp, 8
test eax, eax
jne 0x42d5dc
mov esi, 0x7ffd
jmp 0x42d636
push str.AltTabMenu
push ebx
call esi
add esp, 8
test eax, eax
jne 0x42d5f2
mov esi, 0x7ffc
jmp 0x42d636
push str.AltTabAndMenu
push ebx
call esi
add esp, 8
test eax, eax
jne 0x42d608
mov esi, 0x7ffb
jmp 0x42d636
push str.AltTabMenuDismiss
push ebx
call esi
add esp, 8
test eax, eax
jne 0x42d61e
mov esi, 0x7ffa
jmp 0x42d636
xor esi, esi
push esi
push esi
push esi
push esi
push esi
push esi
push ebx
mov ecx, edi
call fcn.004329d0
test eax, eax
je 0x42dd94
push 0
push 0
push 0
push 0x67
push edi
call fcn.00434ec0
test eax, eax
je 0x42ddc2
lea edx, [esp + 0x8f]
push edx
lea eax, [esp + 0xc4]
push eax
push ebp
call fcn.00415c20
mov edi, eax
add esp, 0xc
test edi, edi
je 0x42d6da
test si, si
je 0x42d679
mov word [edi + 6], si
jmp case.0x42d3f2.14
mov eax, dword [edi + 0x20]
test eax, eax
je 0x42d696
mov ecx, dword [0x4e8068]
cmp dword [eax + 4], ecx
je 0x42de19
mov eax, dword [eax + 8]
test eax, eax
jne 0x42d686
mov ecx, dword [esp + 0xc0]
mov esi, dword [esp + 0x1a4f0]
mov eax, dword [esi + 0x620]
push ecx
call fcn.00415390
test eax, eax
je 0x42de99
cmp byte [esp + 0x8f], 0
jne 0x42d6cf
cmp byte [0x4e86ef], 0
je case.0x42d3f2.14
mov byte [edi + 0x14], 1
mov ebp, esi
jmp 0x42d90c
mov edi, dword [esp + 0x1a4f0]
mov eax, dword [edi + 0x620]
mov edx, dword [esp + 0xc0]
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.0x42d3f2.14
cmp dword [esp + 0xc8], 3
jne 0x42ddc2
cmp dword [edi + 0xaf8], eax
jne case.0x42d3f2.14
push ebp
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, [esp + 0x184]
call fcn.0049e5c0
fldz
add esp, 8
push 0
sub esp, 8
fstp qword [esp]
push 0
mov edx, edi
push 0x10000
push edx
call fcn.004a4470
add esp, 0x18
jmp case.0x42d3f2.14
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x2c]
mov edi, 0x3a
cmp word [ebp + esi*2 - 2], di
jne 0x42d852
cmp esi, 1
je 0x42dea6
movzx eax, word [ebp]
mov ecx, ebp
test ax, ax
je 0x42d7c5
mov dx, word [0x4e4a48]
cmp ax, 0x20
je 0x42d852
cmp ax, 9
je 0x42d852
cmp ax, dx
je 0x42d852
cmp ax, word [0x4e4a50]
je 0x42d852
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
jne 0x42d78f
cmp word [ebp + esi*2 - 4], di
jne 0x42d7d5
cmp esi, 2
ja 0x42d852
dec esi
xor eax, eax
mov word [ebp + esi*2], ax
cmp word [ebp], 0
mov eax, esi
je 0x42d833
cmp esi, 0xffffffff
jne 0x42d7ff
mov eax, ebp
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42d7f0
sub eax, edx
sar eax, 1
lea eax, [ebp + eax*2 - 2]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42d810
cmp ecx, 9
jne 0x42d819
cmp eax, ebp
je 0x42d821
sub eax, 2
jmp 0x42d803
xor ecx, ecx
mov word [eax + 2], cx
jmp 0x42d833
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42d82e
cmp ecx, 9
jne 0x42d833
xor edx, edx
mov word [eax], dx
mov esi, dword [esp + 0x1a4f0]
push 0
mov eax, ebp
call fcn.00432860
test eax, eax
je 0x42deb8
mov ebp, esi
jmp 0x42d90c
cmp word [ebp], 0x23
mov edi, dword [esp + 0x1a4f0]
jne 0x42d895
mov esi, dword [edi + 0x24c]
push ebp
mov ecx, edi
call fcn.004310b0
test eax, eax
je 0x42ddc2
cmp eax, 3
jne 0x42d895
mov eax, dword [esp + 0xa0]
mov dword [edi + 0x248], eax
mov dword [edi + 0x24c], esi
mov ebp, edi
jmp 0x42d90c
movzx eax, word [ebp]
cmp eax, 0x7b
je 0x42d8c1
cmp eax, 0x7d
je 0x42d8c1
push 0
push 0
push 0
push 0
push 0
push 0
push ebp
mov ecx, edi
call fcn.004329d0
test eax, eax
je 0x42d548
jmp case.0x42d3f2.14
cmp eax, 0x7b
push 0
setne cl
push 0
add cl, 0x75
movzx edx, cl
push 0
push edx
push edi
call fcn.00434ec0
test eax, eax
je 0x42deb8
lea eax, [ebp + 2]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42d8f2
cmp ecx, 9
jne 0x42d8f7
add eax, 2
jmp 0x42d8e5
cmp word [eax], 0
mov dword [esp + 0x18], eax
jne 0x42da80
mov ebp, dword [esp + 0x1a4f0]
mov bl, byte [esp + 0x1e]
test bl, bl
je case.0x42d938.4
mov eax, dword [esp + 0xb0]
inc eax
mov dword [esp + 0xb0], eax
dec eax
cmp eax, 9
ja case.0x42d938.4
movzx eax, byte [eax + 0x42e298]
jmp dword [eax*4 + 0x42e284]
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x13c]
push ecx
push str._s::
push edx
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0xc
mov dword [esp + 0x2c], eax
jmp 0x42ccb9
mov edi, dword [esp + 0x18]
mov eax, 0x4bf838
mov edx, edi
sub edx, eax
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x42d970
cmp byte [esp + 0x27], cl
push 0
setne cl
push 1
add cl, 0xc3
lea eax, [esp + 0x20]
movzx edx, cl
push eax
push edx
push ebp
call fcn.00434ec0
cmp byte [esp + 0x38], 0
je 0x42d9d2
lea eax, [esp + 0xfc]
push eax
push str.if_not_GetKeyState___s__
push edi
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0xc
mov dword [esp + 0x2c], eax
mov dword [esp + 0xb0], 9
jmp 0x42ccb9
mov edi, dword [esp + 0x18]
mov ecx, 0x4bd2c4
cmp bl, 0x12
je 0x42d9e6
cmp bl, 0xa3
jbe 0x42da06
cmp bl, 0xa5
ja 0x42da06
movzx eax, byte [esp + 0x26]
sub eax, 0x11
je 0x42da01
sub eax, 0x91
je 0x42da01
dec eax
jne 0x42da06
mov ecx, str.RCtrl_up
jmp 0x42da06
mov ecx, str.LCtrl_up
mov esi, dword [sym.imp.MSVCR100.dll__swprintf]
lea edx, [esp + 0xfc]
push edx
lea eax, [esp + 0xd0]
push eax
push ecx
push str.Blind_s_s_s_DownR
xor ebx, ebx
push edi
mov dword [ebp + 0x648], ebx
call esi
add esp, 0x14
push ebx
push 1
lea ecx, [esp + 0x20]
push ecx
push 0x41
push ebp
call fcn.00434ec0
test eax, eax
je 0x42deea
push ebx
push ebx
push ebx
push 0x67
push ebp
call fcn.00434ec0
lea edx, [esp + 0x13c]
push edx
push str._s_up::
push edi
mov dword [ebp + 0x648], ebx
call esi
add esp, 0xc
mov dword [esp + 0x2c], eax
mov dword [esp + 0xb0], 2
jmp 0x42ccb9
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x42da83
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
mov dword [edi + 0x648], 0
jmp 0x42c6f2
mov esi, dword [esp + 0x18]
mov eax, 0x4bf838
mov edx, esi
sub edx, eax
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x42dab2
cmp byte [esp + 0x27], cl
push 0
setne cl
push 1
add cl, 0xc3
lea eax, [esp + 0x20]
movzx edx, cl
push eax
push edx
push ebp
call fcn.00434ec0
lea eax, [esp + 0xfc]
push eax
push str.Blind_s_Up
push esi
call dword [sym.imp.MSVCR100.dll__swprintf]
add esp, 0xc
push 0
push 1
lea ecx, [esp + 0x20]
push ecx
push 0x41
push ebp
call fcn.00434ec0
push 0
push 0
push 0
push 0x67
push ebp
call fcn.00434ec0
mov byte [esp + 0x1e], 0
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 0x1a4f0]
lea ecx, [esp + 0x858c]
xor ebx, ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], edx
cmp eax, ecx
jne 0x42db4d
lea edx, [esp + 0x124d4]
mov dword [esp + 0x28], edx
jmp 0x42be60
lea eax, [esp + 0x858c]
mov dword [esp + 0x28], eax
jmp 0x42be60
mov ecx, dword [esp + 0x1a4f0]
push ebx
push str.Continuation_section_too_long.
call fcn.00449df0
lea ecx, [esp + 0x3c]
mov esi, eax
call fcn.00429a30
mov eax, esi
jmp 0x42cf16
lea ecx, [esp + 0x584]
push ecx
push 0x4d4c70
mov ecx, ebp
call fcn.00449df0
mov esi, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42dbc0
cmp byte [esp + 0x78], 0
je 0x42dbb8
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42db7a
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [esp + 0x78]
add esp, 0xc
push edx
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, esi
jmp 0x42cf16
cmp dword [ebp + 0x240], 0
mov eax, 0x4d4c70
jne 0x42dc08
mov eax, str.Not_a_valid_method__class_or_property_definition.
lea ecx, [esp + 0x584]
push ecx
push eax
mov ecx, ebp
jmp 0x42db6a
lea edx, [esp + 0x584]
push edx
push str.Functions_cannot_contain_functions.
mov ecx, ebp
jmp 0x42db6a
mov edi, dword [esp + 0x18]
push edi
push str.Not_a_valid_property_getter_setter.
mov ecx, ebp
call fcn.00449df0
mov esi, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42dc68
cmp byte [esp + 0x78], 0
je 0x42dc60
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42db7a
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov eax, dword [esp + 0x78]
add esp, 0xc
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, esi
jmp 0x42cf16
push ebx
push str.Not_a_valid_method__class_or_property_definition.
mov ecx, ebp
jmp 0x42db6a
mov ecx, dword [esp + 0x1a4f0]
push ebp
push str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
jmp 0x42db90
push ebp
mov dword [edi + 0x648], eax
push str.IfWin_should_be_IfWin.
mov ecx, edi
call fcn.00449df0
mov esi, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42dcfe
cmp byte [esp + 0x78], 0
je 0x42dcf6
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42db7a
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov ecx, dword [esp + 0x78]
add esp, 0xc
push ecx
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, esi
jmp 0x42cf16
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
cmp eax, esi
je 0x42dd5c
cmp byte [esp + 0x78], 0
je 0x42dd58
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], esi
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
cmp eax, esi
je 0x42cf14
push 0x2000
push esi
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [esp + 0x78]
add esp, 0xc
push edx
jmp 0x42cf0b
push ebp
push str.This_hotstring_is_missing_its_abbreviation.
jmp 0x42dccc
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42cee6
cmp byte [esp + 0x78], 0
je 0x42ddb9
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], esi
jmp 0x42cee6
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42ddeb
cmp byte [esp + 0x78], 0
je 0x42dde3
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42cf14
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [esp + 0x78]
add esp, 0xc
push edx
jmp 0x42cf0b
mov ecx, dword [esp + 0x1a4f0]
push ebp
mov dword [ecx + 0x648], 0
push str.Duplicate_hotkey.
call fcn.00449df0
mov esi, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42de60
cmp byte [esp + 0x78], 0
je 0x42de58
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42db7a
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov eax, dword [esp + 0x78]
add esp, 0xc
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, esi
jmp 0x42cf16
push ebp
push 0x4bd2fc
mov ecx, esi
jmp 0x42dcce
mov ecx, dword [esp + 0x1a4f0]
push ebp
push str.This_line_does_not_contain_a_recognized_action.
jmp 0x42de30
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42cee6
cmp byte [esp + 0x78], 0
je 0x42dedd
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
jmp 0x42cee6
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
cmp eax, ebx
je 0x42df0e
cmp byte [esp + 0x78], bl
je 0x42df0a
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
cmp eax, ebx
je 0x42cf14
push 0x2000
push ebx
push eax
call sub.MSVCR100.dll_memset
mov edx, dword [esp + 0x78]
add esp, 0xc
push edx
jmp 0x42cf0b
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1a4f0]
push eax
push 0x4d4c10
call fcn.00449df0
mov esi, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x3c], vtable.TextMem.0
test eax, eax
je 0x42df7c
cmp byte [esp + 0x78], 0
je 0x42df74
push eax
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], vtable.TextStream.0
test eax, eax
je 0x42dfaa
push 0x2000
push 0
push eax
call sub.MSVCR100.dll_memset
mov ecx, dword [esp + 0x78]
add esp, 0xc
push ecx
call dword [sym.imp.MSVCR100.dll_free]
add esp, 4
mov eax, esi
jmp 0x42cf16
cmp word [esp + 0x584], bx
je 0x42e01c
mov edx, dword [esp + 0xa4]
mov esi, dword [edi + 0x24c]
mov dword [edi + 0x24c], edx
cmp dword [esp + 0x84], ebx
je 0x42dff8
cmp byte [esp + 0x1d], 0
mov eax, str.Missing___
jne 0x42dfe8
mov eax, 0x4d4c70
lea ecx, [esp + 0x584]
push ecx
push eax
mov ecx, edi
jmp 0x42db6a
push ebx
push ebx
push ebx
push ebx
push ebx
push 3
lea edx, [esp + 0x59c]
push edx
mov ecx, edi
call fcn.004329d0
test eax, eax
je 0x42c7c5
mov dword [edi + 0x24c], esi
cmp dword [edi + 0x24], ebx
je 0x42e03a
cmp dword [esp + 0xa0], ebx
jne 0x42e03a
lea eax, [edi + 0x3c]
push eax
push str.Missing___
mov ecx, edi
jmp 0x42db6a
inc dword [edi + 0x24c]
lea ecx, [esp + 0x3c]
call fcn.00429a30
mov eax, 1
jmp 0x42cf16