Function at 0x424690
Capabilities:
Enumerate pe sections
Get keyboard layout
Resolve function by parsing pe exports

Disassembly:
mov eax, 0xe0a8
call fcn.004cd3a0
push ebx
push ebp
push esi
mov esi, dword [0x4ecf00]
lea eax, [esp + 0x60a4]
push edi
push dword [esp + 0xe0bc]
mov ebp, ecx
mov byte [esp + 0x164], 0
dec esi
mov dword [esp + 0x38], ebp
push 0
push ecx
mov dword [ebp + 0x14c], esi
lea edi, [esp + 0xa0bc]
mov dword [esp + 0x80], esi
or esi, 0xffffffff
push eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x4c], edi
mov byte [esp + 0x23], 0
mov byte [esp + 0x5d], 0
mov byte [esp + 0x62], 0
mov dword [esp + 0x80], esi
call fcn.00426c50
push 2
push 0x4dc248
push dword [esp + 0x1c]
mov ebx, eax
mov dword [esp + 0x28], eax
call fcn.004bdf03
add esp, 0xc
test eax, eax
sete byte [esp + 0x39]
test eax, eax
jne 0x424730
mov eax, dword [esp + 0x14]
xor ebx, ebx
mov dword [esp + 0x1c], ebx
mov byte [eax], 0
mov ecx, dword [esp + 0x14]
nop dword [eax]
nop dword [eax + eax]
mov dword [esp + 0x8c], edi
cmp ebx, 0xffffffff
je 0x426697
push 0xc
lea eax, [esi + 1]
mov dword [ebp + 0x38c], 0
push str.CommentFlag
push ecx
mov dword [ebp + 0x150], eax
call fcn.004b653e
add esp, 0xc
test eax, eax
jne 0x42478a
push dword [esp + 0x14]
mov ecx, ebp
call fcn.00426f60
test eax, eax
je 0x4255a4
mov byte [esp + 0x7c], 0
xor ebp, ebp
jmp 0x4247a4
mov edi, dword [esp + 0x3c]
push dword [esp + 0xe0bc]
inc dword [esp + 0x74]
push ebp
push ecx
push edi
call fcn.00426c50
mov esi, eax
mov dword [esp + 0x48], esi
test esi, esi
je 0x424893
cmp esi, 0xffffffff
je 0x424893
test ebp, ebp
jne 0x424893
push 2
push 0x4dc25c
push edi
call fcn.004bdf03
add esp, 0xc
test eax, eax
jne 0x42486a
cmp byte [esp + 0x39], al
jne 0x424800
cmp byte [edi + 2], 0x3a
jne 0x424800
cmp byte [edi + 3], 0x3a
je 0x424875
sub esi, 2
mov byte [esp + 0x39], 0
lea eax, [esi + 1]
push eax
lea eax, [edi + 2]
push eax
push edi
call fcn.004b4620
mov al, byte [edi]
add esp, 0xc
test al, al
je 0x4247a4
mov ecx, edi
cmp al, 0x20
je 0x424829
cmp al, 9
jne 0x42482f
mov al, byte [ecx + 1]
inc ecx
jmp 0x424821
mov eax, ecx
sub eax, edi
je 0x42485b
cmp esi, 0xffffffff
jne 0x42484b
mov esi, ecx
lea edx, [esi + 1]
nop
mov al, byte [esi]
inc esi
test al, al
jne 0x424840
sub esi, edx
jmp 0x42484d
sub esi, eax
lea eax, [esi + 1]
push eax
push ecx
push edi
call fcn.004b4620
add esp, 0xc
cmp byte [edi], 0
mov dword [esp + 0x48], esi
je 0x4247a4
jmp 0x424875
cmp byte [esp + 0x39], 0
jne 0x4247a4
push 2
push 0x4dc248
push edi
call fcn.004bdf03
add esp, 0xc
test eax, eax
jne 0x424893
mov byte [esp + 0x39], 1
jmp 0x4247a4
cmp byte [esp + 0x39], 0
je 0x4248a8
cmp esi, 0xffffffff
jne 0x4247a4
jmp 0x424f73
test ebp, ebp
jne 0x424d0d
cmp esi, 0xffffffff
je 0x424a93
cmp byte [edi], 0x28
jne 0x424a93
mov al, byte [edi + 1]
lea esi, [edi + 1]
cmp al, 0x3a
je 0x424a8f
mov ecx, dword [esp + 0x48]
cmp byte [ecx + edi - 1], 0x3a
je 0x424a8f
mov cl, byte [0x4eb7d0]
mov ebp, 1
mov byte [esp + 0x58], cl
mov ecx, ebp
mov dword [esp + 0x78], 0
mov byte [esp + 0x57], 1
mov byte [esp + 0x5b], 0
mov byte [esp + 0x5a], 0
mov byte [esp + 0x59], 1
mov word [esp + 0x90], 0xa
mov dword [esp + 0x6c], ecx
nop word [eax + eax]
cmp al, 0x20
je 0x424928
cmp al, 9
jne 0x42492e
mov al, byte [esi + 1]
inc esi
jmp 0x424920
test al, al
je 0x424a85
mov edi, esi
test esi, esi
je 0x424964
mov dl, byte [esi]
test dl, dl
je 0x424964
mov ecx, 0x4d9e7c
mov al, 0x20
nop dword [eax]
cmp dl, al
je 0x42497c
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x424950
mov dl, byte [edi + 1]
inc edi
test dl, dl
jne 0x424942
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x424970
sub ecx, edx
lea edi, [ecx + esi]
mov bl, byte [edi]
push 4
push str.Join
push esi
mov byte [edi], 0
call fcn.004b653e
add esp, 0xc
test eax, eax
jne 0x4249e2
push 0xf
lea eax, [esi + 4]
push eax
lea eax, [esp + 0x98]
push eax
call fcn.004ba990
add esp, 0xc
mov byte [esp + 0x9f], 0
lea ecx, [esp + 0x90]
push 1
call fcn.004a01b0
lea edx, [esp + 0x94]
add esp, 4
lea ecx, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x4249d0
sub edx, ecx
mov dword [esp + 0x6c], edx
jmp 0x424a61
push 5
push 0x4dc2b8
push esi
call fcn.004b653e
add esp, 0xc
test eax, eax
jne 0x424a01
cmp byte [esi + 5], 0x30
setne byte [esp + 0x58]
jmp 0x424a61
push 5
push str.RTrim
push esi
call fcn.004b653e
add esp, 0xc
test eax, eax
jne 0x424a20
cmp byte [esi + 5], 0x30
setne byte [esp + 0x57]
jmp 0x424a61
mov al, byte [esi]
test al, al
je 0x424a61
movsx eax, al
add eax, 0xffffffdb
cmp eax, 0x3e
ja case.0x424a38.38
movzx eax, byte [eax + 0x426764]
jmp dword [eax*4 + 0x42674c]
mov byte [esp + 0x5b], 1
jmp case.0x424a38.38
mov byte [esp + 0x5a], 1
jmp case.0x424a38.38
mov byte [esp + 0x59], 0
jmp case.0x424a38.38
mov ebp, 2
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x424a26
mov byte [edi], bl
mov esi, edi
cmp bl, 0x20
je 0x424a6f
cmp bl, 9
jne 0x424a75
mov bl, byte [esi + 1]
inc esi
jmp 0x424a65
test bl, bl
jne 0x424936
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x3c]
mov byte [esp + 0x7c], 1
jmp 0x4247a4
mov esi, dword [esp + 0x48]
xor ebp, ebp
cmp esi, 0xffffffff
je 0x424f73
test esi, esi
je 0x4247a4
cmp byte [esi + edi - 1], 0x3a
jne 0x424ab6
cmp byte [edi], 0x2c
jne 0x424f73
mov bl, byte [edi]
movzx eax, bl
test eax, 0xffffff80
jne 0x424ad4
push 2
push eax
call fcn.004b8e5e
add esp, 8
test eax, eax
je 0x424ad4
and bl, 0xdf
mov al, bl
cmp al, 0x41
je 0x424c8a
cmp al, 0x4f
je 0x424c15
mov al, byte [edi]
cmp al, 0x3a
je 0x424af4
cmp al, 0x2b
je 0x424af4
cmp al, 0x2d
jne 0x424afd
cmp byte [edi + 1], al
je 0x424f6f
movsx eax, al
push eax
push str.____:.___
call fcn.004b87b6
add esp, 8
test eax, eax
je 0x424f6f
push 0x4dc284
push edi
call fcn.004b886a
mov edi, eax
add esp, 8
test edi, edi
je 0x424cc6
mov ebx, dword [esp + 0x3c]
cmp byte [ebx], 0x3a
jne 0x424b87
mov al, byte [ebx + 1]
lea esi, [ebx + 1]
test al, al
je 0x424b7e
cmp al, 0x3a
je 0x424b7e
movzx eax, al
test eax, 0xffffff80
jne 0x424b61
push 0x107
push eax
call fcn.004b8e5e
add esp, 8
test eax, eax
jne 0x424b76
movsx eax, byte [esi]
push eax
push 0x4dc288
call fcn.004b87b6
add esp, 8
test eax, eax
je 0x424b87
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x424b41
cmp byte [esi], 0x3a
je 0x424f6f
cmp byte [ebx], 0x2c
jne 0x424bd8
mov edi, dword [esp + 0x3c]
lea esi, [edi + 1]
mov al, byte [esi]
cmp al, 0x20
je 0x424b9d
cmp al, 9
jne 0x424ba0
inc esi
jmp 0x424b93
push 2
push 0x4dc284
push esi
call fcn.004bdf03
add esp, 0xc
test eax, eax
je 0x424f6f
push 3
lea eax, [esi - 1]
push 0x4d9e74
push eax
call fcn.004bdf03
add esp, 0xc
test eax, eax
je 0x424f6f
jmp 0x424cca
mov eax, ebx
cmp ebx, edi
jae 0x424bea
nop
cmp byte [eax], 0x22
je 0x424bf2
inc eax
cmp eax, edi
jb 0x424be0
cmp eax, edi
je 0x424f6f
mov al, byte [edi + 2]
lea ecx, [edi + 2]
test al, al
je 0x424f6f
cmp al, 0x22
je 0x424cc6
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x424c00
jmp 0x424f6f
mov bl, byte [edi + 1]
movzx eax, bl
test eax, 0xffffff80
je 0x424c26
xor edx, edx
jmp 0x424c33
push 2
push eax
call fcn.004b8e5e
add esp, 8
mov edx, eax
mov al, bl
and al, 0xdf
test edx, edx
movzx ecx, al
movzx eax, bl
cmove ecx, eax
cmp cl, 0x52
jne 0x424f6f
mov al, byte [edi + 2]
lea ecx, [edi + 2]
cmp al, 0x20
je 0x424c69
cmp al, 9
je 0x424c61
cmp al, 0xa0
jne 0x424f6f
cmp al, 0x20
je 0x424c69
cmp al, 9
jne 0x424c6f
mov al, byte [ecx + 1]
inc ecx
jmp 0x424c61
movsx eax, al
push eax
push str.____:
call fcn.004b87b6
add esp, 8
test eax, eax
jne 0x424f6f
jmp 0x424cca
push 3
push 0x4dc260
push edi
call fcn.004b653e
add esp, 0xc
test eax, eax
jne 0x424f6f
mov al, byte [edi + 3]
lea ecx, [edi + 3]
cmp al, 0x20
je 0x424cc0
cmp al, 9
je 0x424cb8
cmp al, 0xa0
jne 0x424f6f
cmp al, 0x20
je 0x424cc0
cmp al, 9
jne 0x424c6f
mov al, byte [ecx + 1]
inc ecx
jmp 0x424cb8
mov edi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x48]
lea eax, [esi + ebx]
cmp eax, 0x4000
jae 0x4264b4
cmp byte [edi], 0x2c
je 0x424cee
mov eax, dword [esp + 0x14]
mov byte [ebx + eax], 0x20
inc ebx
lea eax, [esi + 1]
push eax
mov eax, dword [esp + 0x18]
add eax, ebx
push edi
push eax
call fcn.004b4620
add esp, 0xc
add ebx, esi
mov dword [esp + 0x1c], ebx
jmp 0x4247a4
cmp esi, 0xffffffff
je 0x426678
cmp esi, 0xfffffffe
je 0x4247a4
mov al, byte [edi]
cmp al, 0x29
jne 0x424d75
mov esi, edi
xor ebp, ebp
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x424d30
sub esi, ecx
lea eax, [edi - 1]
add eax, esi
nop
mov cl, byte [eax]
cmp cl, 0x20
je 0x424d4c
cmp cl, 9
jne 0x424d54
cmp eax, edi
je 0x424d5f
dec eax
dec esi
jmp 0x424d40
inc edi
mov byte [eax + 1], 0
dec esi
jmp 0x424ef3
cmp cl, 0x20
je 0x424d69
cmp cl, 9
jne 0x424d6e
mov byte [eax], 0
xor esi, esi
inc edi
dec esi
jmp 0x424ef3
cmp byte [esp + 0x57], 0
mov edx, dword [esp + 0x3c]
je 0x424dbd
test al, al
je 0x424db7
lea eax, [edx - 1]
add eax, esi
nop dword [eax]
mov cl, byte [eax]
cmp cl, 0x20
je 0x424d9c
cmp cl, 9
jne 0x424da4
cmp eax, edx
je 0x424daa
dec eax
dec esi
jmp 0x424d90
mov byte [eax + 1], 0
jmp 0x424db9
cmp cl, 0x20
je 0x424db4
cmp cl, 9
jne 0x424db9
mov byte [eax], 0
xor esi, esi
mov dword [esp + 0x48], esi
cmp byte [esp + 0x58], 0
je 0x424e17
mov al, byte [edx]
test al, al
jne 0x424dd4
mov dword [esp + 0x48], 0
jmp 0x424e17
mov ecx, edx
cmp al, 0x20
je 0x424dde
cmp al, 9
jne 0x424de4
mov al, byte [ecx + 1]
inc ecx
jmp 0x424dd6
mov eax, ecx
sub eax, edx
je 0x424e13
cmp esi, 0xffffffff
jne 0x424e03
mov esi, ecx
lea edx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x424df4
sub esi, edx
mov edx, dword [esp + 0x3c]
jmp 0x424e05
sub esi, eax
lea eax, [esi + 1]
push eax
push ecx
push edx
call fcn.004b4620
add esp, 0xc
mov dword [esp + 0x48], esi
xor esi, esi
cmp byte [esp + 0x5b], 0
je 0x424e53
mov al, byte [0x4e9aad]
lea edx, [esp + 0x4c]
mov ecx, dword [esp + 0x3c]
push esi
push esi
push 0x4001
push 0xffffffffffffffff
mov byte [esp + 0x5c], al
mov byte [esp + 0x60], al
mov byte [esp + 0x61], al
lea eax, [esp + 0x60]
push 1
push eax
call fcn.0049e8b0
add esp, 0x18
mov esi, eax
cmp byte [esp + 0x5a], 0
je 0x424e95
mov al, byte [0x4e9aad]
lea edx, [esp + 0x4c]
mov cl, byte [0x4e9aae]
push 0
push 0
push 0x4001
push 0xffffffffffffffff
mov byte [esp + 0x60], al
lea eax, [esp + 0x60]
mov byte [esp + 0x5c], cl
mov byte [esp + 0x61], cl
mov ecx, dword [esp + 0x4c]
push 1
push eax
call fcn.0049e8b0
add esp, 0x18
add esi, eax
cmp byte [esp + 0x59], 0
je 0x424ed7
mov al, byte [0x4e9aad]
lea edx, [esp + 0x4c]
mov cl, byte [0x4e9aaf]
push 0
push 0
push 0x4001
push 0xffffffffffffffff
mov byte [esp + 0x60], al
lea eax, [esp + 0x60]
mov byte [esp + 0x5c], cl
mov byte [esp + 0x61], cl
mov ecx, dword [esp + 0x4c]
push 1
push eax
call fcn.0049e8b0
add esp, 0x18
add esi, eax
test esi, esi
je 0x424eef
mov edx, dword [esp + 0x3c]
mov esi, edx
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x424ee4
sub esi, ecx
jmp 0x424ef7
mov esi, dword [esp + 0x48]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x6c]
lea eax, [ecx + esi]
add eax, ebx
cmp eax, 0x4001
jae 0x4264b4
mov eax, dword [esp + 0x78]
inc eax
mov dword [esp + 0x78], eax
cmp eax, 1
jle 0x424f46
test ecx, ecx
je 0x424f46
cmp edi, edx
jne 0x424f46
lea eax, [ecx + 1]
push eax
lea eax, [esp + 0x94]
push eax
mov eax, dword [esp + 0x1c]
add eax, ebx
push eax
call fcn.004b4620
mov ecx, dword [esp + 0x78]
add esp, 0xc
add ebx, ecx
mov dword [esp + 0x1c], ebx
test esi, esi
je 0x4247a0
lea eax, [esi + 1]
push eax
mov eax, dword [esp + 0x18]
add eax, ebx
push edi
push eax
call fcn.004b4620
add esp, 0xc
add ebx, esi
mov dword [esp + 0x1c], ebx
jmp 0x4247a0
mov byte [edi], bl
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x34]
test ebx, ebx
je 0x4256d9
cmp byte [esp + 0x160], 0
je 0x4250f4
mov eax, dword [esp + 0x30]
mov esi, dword [ebp + 0x150]
mov dword [ebp + 0x150], eax
mov eax, dword [esp + 0x14]
cmp byte [eax], 0x7b
je 0x425009
cmp byte [esp + 0x1b], 0
jne 0x425009
mov ebx, dword [esp + 0x2c]
test ebx, ebx
jne 0x426501
cmp dword [ebp + 0x28], ebx
je 0x424fcf
mov eax, dword [0x4e88cc]
cmp dword [eax + 0x94], ebx
je 0x4264d0
push 0
push 0
push 0
push 0
push 0
push 3
lea eax, [esp + 0x178]
mov ecx, ebp
push eax
call fcn.00428ae0
test eax, eax
je 0x4255a4
mov dword [ebp + 0x38c], 0
mov byte [esp + 0x160], 0
jmp 0x4250ee
mov ebx, dword [esp + 0x2c]
mov eax, ebx
sub eax, 0
je 0x425054
sub eax, 1
je 0x425033
sub eax, 1
jne 0x4250a0
lea eax, [esp + 0x160]
mov ecx, ebp
push eax
call fcn.0042e060
jmp 0x425042
lea eax, [esp + 0x160]
mov ecx, ebp
push eax
call fcn.0042db00
test eax, eax
je 0x4255a4
mov byte [esp + 0x160], 0
jmp 0x4250ac
mov eax, dword [0x4e88cc]
mov ecx, ebp
cmp dword [eax + 0x94], 0
jne 0x426522
lea eax, [esp + 0x4168]
push eax
lea eax, [esp + 0x164]
push eax
call fcn.0042cef0
test eax, eax
je 0x4255a4
cmp byte [esp + 0x1b], 0
je 0x4250a0
push 0
push 0
push 0
push 0x77
mov ecx, ebp
call fcn.0042b030
jmp 0x424fea
mov byte [esp + 0x160], 0
test ebx, ebx
je 0x4250ee
cmp byte [esp + 0x1b], 0
jne 0x4250ee
mov ecx, dword [esp + 0x14]
mov al, byte [ecx + 1]
inc ecx
cmp al, 0x20
je 0x4250b7
cmp al, 9
je 0x4250b7
test al, al
je 0x4256d3
mov ebx, ecx
lea edx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x4250d0
sub ebx, edx
mov dword [esp + 0x1c], ebx
lea eax, [ebx + 1]
push eax
push ecx
push dword [esp + 0x1c]
call fcn.004b4620
add esp, 0xc
mov dword [ebp + 0x150], esi
mov eax, dword [esp + 0x14]
mov dl, byte [eax]
cmp dl, 0x7d
jne 0x42521c
mov ecx, dword [ebp + 0x28]
test ecx, ecx
je 0x42521c
mov eax, dword [0x4e88cc]
cmp dword [eax + 0x94], 0
jne 0x42521c
cmp dword [ebp + 0x144], 0
je 0x425159
mov eax, dword [ebp + 0x148]
mov dword [ebp + 0x144], 0
test eax, eax
je 0x4251dd
push eax
call fcn.004b6427
add esp, 4
mov dword [ebp + 0x148], 0
jmp 0x4251dd
lea eax, [ecx - 1]
mov dword [ebp + 0x28], eax
mov ebx, dword [ebp + eax*4 + 0x2c]
mov esi, dword [ebx + 0x10]
sub esi, 1
js 0x4251b9
mov edi, esi
shl edi, 4
mov eax, dword [ebx + 0xc]
cmp dword [eax + edi + 0xc], 1
jne 0x4251ae
cmp esi, dword [ebx + 0x1c]
jl 0x42518b
push dword [eax + edi + 8]
call fcn.004b6427
add esp, 4
mov edx, dword [ebx + 0x10]
dec edx
mov dword [ebx + 0x10], edx
cmp esi, edx
jge 0x4251ae
mov ecx, dword [ebx + 0xc]
sub edx, esi
add ecx, edi
shl edx, 4
push edx
lea eax, [ecx + 0x10]
push eax
push ecx
call fcn.004b4620
add esp, 0xc
sub edi, 0x10
sub esi, 1
jns 0x425170
mov eax, dword [ebp + 0x28]
mov eax, dword [ebp + eax*4 + 0x2c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
lea esi, [ebp + 0x40]
push 0x2e
push esi
call fcn.004be03b
add esp, 8
test eax, eax
je 0x4251da
mov byte [eax], 0
jmp 0x4251dd
mov byte [esi], 0
mov ebx, dword [esp + 0x14]
mov al, byte [ebx + 1]
inc ebx
cmp al, 0x20
je 0x4251e1
cmp al, 9
je 0x4251e1
mov dword [esp + 0x14], ebx
cmp byte [ebx], 0
je 0x4256d9
lea ecx, [ebx + 1]
nop dword [eax]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x425200
sub ebx, ecx
mov dword [ebp + 0x38c], 0
mov dword [esp + 0x1c], ebx
jmp 0x424f77
cmp dword [ebp + 0x144], 0
je 0x4252f1
mov eax, dword [0x4e88cc]
cmp dword [eax + 0x94], 0
jne 0x4252f1
push 3
push 0x4dc338
push dword [esp + 0x1c]
call fcn.004b653e
add esp, 0xc
test eax, eax
je 0x42526d
push 3
push 0x4dc33c
push dword [esp + 0x1c]
call fcn.004b653e
add esp, 0xc
test eax, eax
jne 0x426541
mov ecx, dword [esp + 0x14]
lea esi, [ecx + 3]
mov al, byte [esi]
cmp al, 0x20
je 0x42527e
cmp al, 9
jne 0x425281
inc esi
jmp 0x425274
test al, al
je 0x425297
cmp al, 0x7b
jne 0x426545
cmp byte [esi + 1], 0
jne 0x426545
mov ecx, dword [ebp + 0x148]
lea edx, [esp + 0x160]
sub edx, ecx
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [ecx + edx - 1], al
test al, al
jne 0x4252a6
lea eax, [esp + 0x160]
push 0x2e
push eax
call fcn.004b87b6
mov edx, dword [esp + 0x2c]
mov ecx, eax
mov eax, dword [esp + 0x1c]
add esp, 8
mov al, byte [eax]
mov byte [ecx + 1], al
cmp byte [esi], 0x7b
mov ecx, dword [ebp + 0x150]
sete byte [esp + 0x1b]
mov dword [esp + 0x30], ecx
xor ebp, ebp
mov dword [esp + 0x2c], ebp
jmp 0x4256e5
mov ebp, dword [esp + 0x14]
test dl, dl
je 0x42531b
mov edi, ebp
nop dword [eax + eax]
mov ecx, str.__t____:_______.___
mov al, 0x20
cmp dl, al
je 0x425371
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x425307
mov dl, byte [edi + 1]
inc edi
test dl, dl
jne 0x425300
mov eax, dword [0x4e88cc]
cmp dword [eax + 0x94], 0
jne 0x42593b
mov esi, dword [esp + 0x14]
push 5
push str.Class
push esi
call fcn.004b653e
add esp, 0xc
test eax, eax
jne 0x425522
mov al, byte [esi + 5]
cmp al, 0x20
je 0x425358
cmp al, 9
jne 0x425522
lea edi, [esi + 6]
nop dword [eax + eax]
mov al, byte [edi]
cmp al, 0x20
je 0x42536e
cmp al, 9
jne 0x42546c
inc edi
jmp 0x425360
cmp byte [edi], 0x28
jne 0x42531b
mov esi, dword [esp + 0x14]
cmp edi, esi
je 0x42531b
mov ebx, edi
mov edx, 0x4dc210
sub ebx, esi
mov ecx, esi
push 0xffffffffffffffff
push ebx
call fcn.0049e1b0
add esp, 8
test eax, eax
je 0x42531b
push 0xffffffffffffffff
push ebx
mov edx, str.WHILE
mov ecx, ebp
call fcn.0049e1b0
add esp, 8
test eax, eax
je 0x42531b
cmp byte [edi + 1], 0x3a
je 0x42531b
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4253c1
sub ecx, edx
dec ecx
add ecx, edi
mov al, byte [ecx]
cmp al, 0x7b
sete byte [esp + 0x1b]
jne 0x42542d
mov byte [ecx], 0
sub ecx, ebp
cmp byte [ebp], 0
je 0x425427
cmp ecx, 0xffffffff
jne 0x4253f9
mov ecx, ebp
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4253f0
sub ecx, edx
lea eax, [ebp - 1]
add eax, ecx
nop
mov dl, byte [eax]
cmp dl, 0x20
je 0x42540c
cmp dl, 9
jne 0x425414
cmp eax, ebp
je 0x42541a
dec eax
dec ecx
jmp 0x425400
mov byte [eax + 1], 0
jmp 0x425429
cmp dl, 0x20
je 0x425424
cmp dl, 9
jne 0x425429
mov byte [eax], 0
xor ecx, ecx
mov al, byte [ecx + ebp - 1]
cmp al, 0x29
jne 0x42531b
mov esi, dword [esp + 0x14]
lea ecx, [esp + 0x160]
sub ecx, esi
mov al, byte [esi]
lea esi, [esi + 1]
mov byte [esi + ecx - 1], al
test al, al
jne 0x425442
mov ecx, dword [esp + 0x34]
xor ebp, ebp
mov edx, dword [esp + 0x24]
mov dword [esp + 0x2c], ebp
mov ecx, dword [ecx + 0x150]
mov dword [esp + 0x30], ecx
jmp 0x4256e5
movsx eax, al
push eax
push str.__t____:_______.___
call fcn.004b87b6
add esp, 8
test eax, eax
jne 0x425522
mov ecx, edi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x425490
sub ecx, edx
dec ecx
add ecx, edi
cmp byte [ecx], 0x7b
sete byte [esp + 0x1b]
jne 0x4254ec
mov byte [ecx], al
sub ecx, esi
cmp byte [esi], al
je 0x4254ec
cmp ecx, 0xffffffff
jne 0x4254c1
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4254b8
sub ecx, edx
lea eax, [esi - 1]
add eax, ecx
mov cl, byte [eax]
cmp cl, 0x20
je 0x4254d2
cmp cl, 9
jne 0x4254d9
cmp eax, esi
je 0x4254df
dec eax
jmp 0x4254c6
mov byte [eax + 1], 0
jmp 0x4254ec
cmp cl, 0x20
je 0x4254e9
cmp cl, 9
jne 0x4254ec
mov byte [eax], 0
lea ecx, [esp + 0x160]
sub ecx, edi
mov al, byte [edi]
lea edi, [edi + 1]
mov byte [edi + ecx - 1], al
test al, al
jne 0x4254f5
mov ecx, dword [esp + 0x34]
mov ebp, 1
mov edx, dword [esp + 0x24]
mov dword [esp + 0x2c], ebp
mov ecx, dword [ecx + 0x150]
mov dword [esp + 0x30], ecx
jmp 0x4256e5
mov ebp, dword [esp + 0x34]
cmp dword [ebp + 0x28], 0
je 0x42593b
mov esi, dword [esp + 0x14]
mov cl, byte [esi]
movzx eax, cl
test eax, 0xffffff80
jne 0x425554
push 0x107
push eax
call fcn.004b8e5e
mov cl, byte [esi]
add esp, 8
test eax, eax
jne 0x425563
cmp cl, 0x5f
je 0x425563
cmp cl, 0x7f
ja 0x425563
cmp cl, 0x2e
jne 0x425566
inc esi
jmp 0x425534
cmp esi, dword [esp + 0x14]
jbe 0x42566e
cmp cl, 0x20
je 0x42557a
cmp cl, 9
jne 0x425580
mov cl, byte [esi + 1]
inc esi
jmp 0x425570
cmp cl, 0x3a
jne 0x4255b3
cmp byte [esi + 1], 0x3d
jne 0x42566e
push 0
push dword [esp + 0x18]
mov ecx, ebp
call fcn.0042e200
test eax, eax
jne 0x4256d9
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
test cl, cl
je 0x4255cf
cmp cl, 0x5b
je 0x4255cf
cmp cl, 0x7b
jne 0x42566e
cmp byte [esi + 1], 0
jne 0x42566e
mov ecx, dword [esp + 0x14]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4255d6
mov esi, dword [esp + 0x14]
sub ecx, edx
cmp byte [ecx + esi - 1], 0x7b
sete byte [esp + 0x1b]
jne 0x425638
dec ecx
cmp byte [esi], al
je 0x425638
cmp ecx, 0xffffffff
jne 0x425609
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x425600
sub ecx, edx
mov eax, dword [esp + 0x14]
dec eax
add eax, ecx
mov cl, byte [eax]
cmp cl, 0x20
je 0x42561c
cmp cl, 9
jne 0x425625
cmp eax, dword [esp + 0x14]
je 0x42562b
dec eax
jmp 0x425610
mov byte [eax + 1], 0
jmp 0x425638
cmp cl, 0x20
je 0x425635
cmp cl, 9
jne 0x425638
mov byte [eax], 0
mov esi, dword [esp + 0x14]
lea ecx, [esp + 0x160]
sub ecx, esi
mov al, byte [esi]
lea esi, [esi + 1]
mov byte [esi + ecx - 1], al
test al, al
jne 0x425645
mov ecx, dword [ebp + 0x150]
mov ebp, 2
mov edx, dword [esp + 0x24]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], ebp
jmp 0x4256e5
push 6
push str.Static
push dword [esp + 0x1c]
call fcn.004b653e
add esp, 0xc
test eax, eax
mov eax, dword [esp + 0x14]
jne 0x4256a1
mov cl, byte [eax + 6]
cmp cl, 0x20
je 0x425696
cmp cl, 9
jne 0x4256a1
push 1
add eax, 7
push eax
jmp 0x425595
cmp byte [eax], 0x23
jne 0x426563
mov esi, dword [ebp + 0x150]
mov ecx, ebp
push eax
call fcn.00426f60
test eax, eax
je 0x4255a4
cmp eax, 3
jne 0x42655f
mov eax, dword [esp + 0x74]
mov dword [ebp + 0x14c], eax
mov dword [ebp + 0x150], esi
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov bh, byte [esp + 0x13]
mov bl, byte [esp + 0x12]
mov eax, edx
test bh, bh
je case.0x4257ae.4
mov esi, dword [esp + 0x64]
inc edx
mov dword [esp + 0x30], ecx
mov edi, ecx
mov cl, byte [esp + 0x1b]
mov dword [esp + 0x24], edx
mov ch, cl
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x5c]
mov byte [esp + 0x1b], cl
mov cl, byte [esp + 0x2b]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x44], edx
mov dh, bl
mov byte [esp + 0x12], bl
mov bl, cl
mov byte [esp + 0x2b], cl
mov cl, byte [esp + 0x22]
mov byte [esp + 0x22], cl
mov dl, cl
mov cl, byte [esp + 0x23]
mov byte [esp + 0x13], bh
mov byte [esp + 0x42], ch
mov dword [esp + 0x2c], ebp
mov byte [esp + 0x43], dh
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], esi
mov byte [esp + 0x3a], dl
mov byte [esp + 0x23], cl
mov byte [esp + 0x3b], cl
cmp eax, 9
ja case.0x4257ae.4
mov esi, dword [esp + 0x44]
movzx eax, byte [eax + 0x4267b8]
mov byte [esp + 0x1b], ch
mov ch, bl
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x68]
mov byte [esp + 0x2b], ch
mov ch, dl
mov dword [esp + 0x64], esi
mov esi, dword [esp + 0x1c]
mov byte [esp + 0x13], bh
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], ebp
mov byte [esp + 0x12], dh
mov byte [esp + 0x22], ch
mov byte [esp + 0x23], cl
mov dword [esp + 0x24], esi
jmp dword [eax*4 + 0x4267a4]
mov eax, dword [esp + 0x14]
test dl, dl
mov cx, word [0x4d9c10]
mov esi, dword [esp + 0x34]
push 0
mov word [eax], cx
mov eax, dword [esp + 0x18]
mov cl, byte [0x4d9c12]
push 1
mov byte [eax + 2], cl
lea eax, [esp + 0x1c]
push eax
setne al
mov ecx, esi
add al, 0xc5
movzx eax, al
push eax
call fcn.0042b030
cmp byte [esp + 0x3b], 0
je 0x425863
lea eax, [esp + 0xa0]
push eax
push str.if_not_GetKeyState___s__
push dword [esp + 0x1c]
call fcn.004053b0
mov dword [esp + 0x30], 9
mov edx, dword [esp + 0x50]
mov ch, bl
mov cl, byte [esp + 0x47]
mov dword [esp + 0x28], eax
mov al, byte [esp + 0x4e]
mov dword [esp + 0x68], edx
mov dh, byte [esp + 0x4f]
mov byte [esp + 0x37], ch
mov ch, byte [esp + 0x46]
mov byte [esp + 0x27], al
mov eax, dword [esp + 0x74]
mov byte [esp + 0x1f], bh
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ebp
mov byte [esp + 0x1e], dh
mov dword [esp + 0x70], eax
mov byte [esp + 0x2e], ch
mov byte [esp + 0x2f], cl
jmp 0x425938
mov esi, dword [esp + 0x34]
movzx eax, bh
mov ecx, 0x4d5231
sub eax, 0x12
je 0x42587c
sub eax, 0x92
je 0x42587c
sub eax, 1
jne 0x42589c
movzx eax, bl
sub eax, 0x11
je 0x425897
sub eax, 0x91
je 0x425897
sub eax, 1
jne 0x42589c
mov ecx, str.RCtrl_up
jmp 0x42589c
mov ecx, str.LCtrl_up
lea eax, [esp + 0xa0]
mov dword [esi + 0x38c], 0
push eax
lea eax, [esp + 0x88]
push eax
push ecx
push str.Blind_s_s_s_DownR
push dword [esp + 0x24]
call fcn.004053b0
add esp, 0x14
lea eax, [esp + 0x14]
mov ecx, esi
push 0
push 1
push eax
push 0x41
call fcn.0042b030
test eax, eax
je 0x4255a4
push 0
push 0
push 0
push 0x67
mov ecx, esi
call fcn.0042b030
lea eax, [esp + 0xc0]
mov dword [esi + 0x38c], 0
push eax
push str._s_up::
push dword [esp + 0x1c]
call fcn.004053b0
mov dword [esp + 0x30], 2
jmp 0x425814
lea eax, [esp + 0xc0]
push eax
push str._s::
push dword [esp + 0x1c]
call fcn.004053b0
mov dword [esp + 0x28], eax
add esp, 0xc
mov esi, dword [esp + 0x14]
xor edi, edi
xor ebp, ebp
mov dword [esp + 0x44], edi
cmp byte [esi], 0x3a
jne 0x425ad1
mov al, byte [esi + 1]
test al, al
je 0x425ad1
lea ecx, [esi + 1]
mov dword [esp + 0x5c], ecx
cmp al, 0x3a
je 0x425986
push 0x3a
push ecx
call fcn.004b87b6
mov edi, eax
add esp, 8
test edi, edi
je 0x425acb
mov ecx, dword [esp + 0x5c]
inc edi
mov dword [esp + 0x44], edi
jmp 0x42599c
mov eax, dword [esp + 0x14]
add eax, 2
cmp byte [eax], 0
je 0x425ad1
mov edi, eax
mov dword [esp + 0x44], eax
test edi, edi
je 0x425ad1
mov ah, byte [0x4eb74c]
mov esi, ecx
mov byte [esp + 0x12], ah
cmp ecx, edi
jae 0x4259fa
mov bl, byte [esi]
movzx eax, bl
test eax, 0xffffff80
je 0x4259c4
xor edx, edx
jmp 0x4259d1
push 2
push eax
call fcn.004b8e5e
add esp, 8
mov edx, eax
mov al, bl
inc esi
and al, 0xdf
test edx, edx
movzx ecx, al
movzx eax, bl
cmove ecx, eax
cmp cl, 0x58
je 0x4259f0
cmp esi, edi
jb 0x4259b4
mov ah, byte [esp + 0x12]
jmp 0x4259fa
cmp byte [esi], 0x30
setne ah
mov byte [esp + 0x12], ah
mov esi, edi
nop dword [eax]
mov al, byte [esi]
mov ebx, ebp
test al, al
je 0x425a25
mov dl, byte [0x4e9aad]
mov cl, al
mov al, cl
cmp cl, dl
je 0x425a25
cmp cl, 0x3a
je 0x425a25
mov al, byte [esi + 1]
inc esi
mov cl, al
test al, al
jne 0x425a10
mov edx, esi
test al, al
je 0x425ac3
mov cl, byte [esi + 1]
lea edi, [esi + 1]
cmp al, 0x3a
jne 0x425a58
cmp cl, al
jne 0x425a49
mov ebp, esi
mov esi, edi
test ah, ah
jne 0x425ac3
mov ah, byte [esp + 0x12]
cmp cl, 0x3a
mov ebp, edx
cmovne ebp, ebx
inc esi
jmp 0x425a00
movsx eax, cl
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x425a6a.99
movzx eax, byte [eax + 0x4267e4]
jmp dword [eax*4 + 0x4267c4]
mov byte [edi], 7
jmp case.0x425a6a.99
mov byte [edi], 8
jmp case.0x425a6a.99
mov byte [edi], 0xc
jmp case.0x425a6a.99
mov byte [edi], 0xa
jmp case.0x425a6a.99
mov byte [edi], 0xd
jmp case.0x425a6a.99
mov byte [edi], 9
jmp case.0x425a6a.99
mov byte [edi], 0xb
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x425a97
sub ecx, edx
lea eax, [ecx + 1]
push eax
push edi
push esi
call fcn.004b4620
add esp, 0xc
cmp byte [esi], 0x3a
jne 0x425ab9
cmp byte [edi], 0x3a
cmove esi, edi
mov ah, byte [esp + 0x12]
inc esi
jmp 0x425a00
test ebp, ebp
jne 0x425b5a
xor edi, edi
mov dword [esp + 0x44], edi
push 0x4dc284
push dword [esp + 0x18]
call fcn.004b886a
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x426233
mov ecx, dword [esp + 0x14]
cmp ebp, ecx
jne 0x425afb
cmp byte [ebp + 2], 0x3a
jne 0x425afb
inc ebp
mov esi, ebp
cmp ebp, ecx
jbe 0x425b10
mov al, byte [esi]
cmp al, 0x20
je 0x425b0b
cmp al, 9
jne 0x425b10
dec esi
cmp esi, ecx
ja 0x425b01
mov bl, byte [esi]
mov byte [esi], 0
mov ecx, dword [esp + 0x14]
nop dword [eax]
mov al, byte [ecx]
cmp al, 0x20
je 0x425b2a
cmp al, 9
jne 0x425b2d
inc ecx
jmp 0x425b20
push 0
xor edx, edx
call fcn.0040dd20
add esp, 4
mov dword [esp + 0x64], eax
test eax, eax
je 0x426231
cmp eax, 4
je 0x4255a4
mov byte [esi], bl
test ebp, ebp
je 0x426233
jmp 0x425b5e
mov edi, dword [esp + 0x44]
mov ecx, dword [esp + 0x14]
cmp ebp, ecx
jbe 0x426237
mov eax, dword [0x4e88cc]
cmp dword [eax + 0x94], 0
jne 0x426640
mov edx, dword [esp + 0x34]
mov eax, dword [edx + 0x354]
test eax, eax
je 0x425b93
cmp byte [eax], 0x1a
je 0x42657d
mov byte [ebp], 0
add ebp, 2
test edi, edi
jne 0x425e93
mov al, byte [ebp]
test al, al
je 0x425be7
mov edx, ebp
nop dword [eax + eax]
cmp al, 0x20
je 0x425bb8
cmp al, 9
jne 0x425bbe
mov al, byte [edx + 1]
inc edx
jmp 0x425bb0
mov eax, edx
sub eax, ebp
je 0x425be7
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x425bd0
sub ecx, esi
lea eax, [ecx + 1]
push eax
push edx
push ebp
call fcn.004b4620
add esp, 0xc
cmp byte [ebp], 0
mov edi, ebp
je 0x425e8f
cmp byte [ebp + 1], 0
je 0x425c55
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
cmp byte [ebp], 0
mov ecx, eax
je case.0x425c26.34
mov al, byte [ebp + 1]
test al, al
je case.0x425c26.34
cmp al, 0x20
je case.0x425c26.34
movsx eax, byte [edi]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x425c26.34
movzx eax, byte [eax + 0x426804]
jmp dword [eax*4 + 0x4267fc]
mov al, byte [edi + 2]
inc edi
test al, al
jne 0x425c10
push ecx
push ecx
push 0
xor edx, edx
mov ecx, edi
call fcn.00415c70
mov bh, al
add esp, 0xc
mov byte [esp + 0x13], bh
test bh, bh
je 0x425e89
jmp 0x425c5c
or bh, 0xff
mov byte [esp + 0x13], bh
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
mov esi, dword [esp + 0x14]
mov edx, eax
cmp byte [esi], 0
je case.0x425c96.34
mov al, byte [esi + 1]
lea ecx, [esi + 1]
test al, al
je case.0x425c96.34
nop dword [eax]
cmp al, 0x20
je case.0x425c96.34
movsx eax, byte [esi]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x425c96.34
movzx eax, byte [eax + 0x42686c]
jmp dword [eax*4 + 0x426864]
mov esi, ecx
mov al, byte [esi + 1]
lea ecx, [esi + 1]
test al, al
jne 0x425c80
push edx
push ecx
push 0
xor edx, edx
mov ecx, esi
call fcn.00415c70
add esp, 0xc
mov bl, al
mov byte [esp + 0x2b], bl
push 0x4d9e74
push esi
call fcn.004b886a
add esp, 8
mov cl, bl
test eax, eax
setne byte [esp + 0x3a]
dec cl
cmp cl, 5
ja 0x425ce2
cmp bl, 3
jne 0x425cea
mov al, bl
add al, 0x66
cmp al, 5
ja 0x425cee
mov cl, 1
jmp 0x425cf0
xor cl, cl
mov al, bh
dec al
cmp al, 5
ja 0x425cfd
cmp bh, 3
jne 0x425d05
mov al, bh
add al, 0x66
cmp al, 5
ja 0x425d09
mov al, 1
jmp 0x425d0b
xor al, al
mov byte [esp + 0x22], al
test cl, cl
jne 0x425d1c
mov byte [esp + 0x23], 1
test al, al
jne 0x425d21
mov byte [esp + 0x23], 0
mov ebx, dword [esp + 0x14]
mov ecx, esi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x425d30
sub ecx, edx
cmp ecx, 1
jne 0x425d51
movzx eax, byte [esi]
push eax
call dword [sym.imp.USER32.dll_IsCharUpperA]
test eax, eax
mov eax, 0x4dc3b4
jne 0x425d56
mov eax, 0x4d5231
cmp byte [esp + 0x3a], 0
mov ecx, 0x4dc1e0
push ebx
push eax
mov eax, 0x4d5231
cmove eax, ecx
push eax
push str._s_s_s
lea eax, [esp + 0xd0]
push 0x20
push eax
call fcn.0049e100
push 0x1f
lea eax, [esp + 0xbc]
push edi
push eax
call fcn.004ba990
add esp, 0x24
mov byte [esp + 0xbf], 0
lea eax, [esp + 0x84]
push 7
push ebp
push eax
call fcn.004ba990
sub edi, ebp
mov byte [esp + 0x97], 0
add esp, 0xc
cmp edi, 8
jae 0x425dc4
mov byte [esp + edi + 0x84], 0
mov bh, byte [esp + 0x13]
xor edx, edx
mov dword [esp + 0x24], edx
cmp byte [esp + 0x84], dl
jne 0x4261f6
cmp bh, 0xd
jne 0x425e0a
lea eax, [esp + 0xa0]
push str.Return
push eax
call fcn.004b626e
add esp, 8
test eax, eax
je 0x425e83
mov dword [esp + 0x24], 1
jmp case.0x4257ae.0
cmp bh, 0x13
jne 0x4261f6
mov al, byte [esp + 0xa0]
movzx ebx, al
test ebx, 0xffffff80
je 0x425e29
xor esi, esi
jmp 0x425e3d
push 2
push ebx
call fcn.004b8e5e
mov esi, eax
add esp, 8
mov al, byte [esp + 0xa0]
mov cl, bl
and cl, 0xdf
test esi, esi
movzx edx, cl
mov ecx, ebx
cmove edx, ecx
cmp dl, 0x50
je 0x425e83
movzx ebx, al
test ebx, 0xffffff80
je 0x425e60
xor eax, eax
jmp 0x425e6b
push 2
push ebx
call fcn.004b8e5e
add esp, 8
mov cl, bl
and cl, 0xdf
test eax, eax
movzx edx, cl
mov ecx, ebx
cmove edx, ecx
cmp dl, 0x42
jne 0x426207
xor bh, bh
mov byte [esp + 0x13], bh
mov edi, dword [esp + 0x44]
jmp 0x425e97
mov edi, dword [esp + 0x44]
mov bh, byte [esp + 0x13]
mov esi, dword [esp + 0x34]
cmp byte [esi + 0x154], 0
je 0x425edc
push 0
push 0xff
push 0
push 0x67
mov ecx, esi
mov byte [esi + 0x154], 0
call fcn.0042b030
test eax, eax
je 0x4255a4
mov eax, dword [esi + 0x354]
mov dword [eax + 0xc], 1
mov dword [esi + 0x38c], 0
push 1
push dword [esp + 0x18]
mov ecx, esi
call fcn.004288e0
test eax, eax
je 0x4255a4
test edi, edi
je 0x425fe5
cmp byte [edi], 0
je 0x4265be
mov bl, byte [esp + 0x12]
mov eax, 0x4d5231
mov edx, dword [esi + 0x364]
test bl, bl
push 0
push dword [esp + 0x80]
cmove eax, ebp
mov ecx, dword [edx + 4]
push eax
push edi
push ecx
mov eax, esp
mov dword [eax], edx
mov edx, dword [esp + 0x70]
call fcn.0040ea00
add esp, 0x14
test eax, eax
je 0x4255a4
mov al, byte [ebp]
test al, al
je 0x426220
test bl, bl
je 0x425fae
mov ecx, ebp
nop
cmp al, 0x20
je 0x425f58
cmp al, 9
jne 0x425f5e
mov al, byte [ecx + 1]
inc ecx
jmp 0x425f50
push 0
push 0
push 0
push 0
push 0
push 0
push ecx
mov ecx, esi
call fcn.00428ae0
test eax, eax
je 0x4255a4
mov eax, dword [esi + 0x354]
mov al, byte [eax]
cmp al, 9
jb 0x425f8e
cmp al, 0x20
jbe 0x42659d
cmp al, 0x21
je 0x42659d
cmp al, 0x69
jb 0x425fa2
cmp al, 0x6b
jbe 0x42659d
cmp al, 0x71
jb 0x425fae
cmp al, 0x73
jbe 0x42659d
push 0
push 0
push 0
mov ebp, esi
push 0x67
mov ecx, ebp
call fcn.0042b030
test eax, eax
je 0x4255a4
mov eax, dword [ebp + 0x354]
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov dword [eax + 0xc], 1
jmp 0x4256ed
xor esi, esi
cmp byte [ebp], 0
je 0x4260f1
push str.AltTab
push ebp
call fcn.004b626e
add esp, 8
test eax, eax
jne 0x42600d
mov esi, 0x7ffe
jmp 0x4260c7
push str.ShiftAltTab
push ebp
call fcn.004b626e
add esp, 8
test eax, eax
jne 0x426029
mov esi, 0x7ffd
jmp 0x4260c7
push str.AltTabMenu
push ebp
call fcn.004b626e
add esp, 8
test eax, eax
jne 0x426045
mov esi, 0x7ffc
jmp 0x4260c7
push str.AltTabAndMenu
push ebp
call fcn.004b626e
add esp, 8
test eax, eax
jne 0x42605e
mov esi, 0x7ffb
jmp 0x4260c7
push str.AltTabMenuDismiss
push ebp
call fcn.004b626e
add esp, 8
test eax, eax
jne 0x426077
mov esi, 0x7ffa
jmp 0x4260c7
mov edi, dword [esp + 0x34]
xor esi, esi
push esi
push esi
push esi
push esi
push esi
push esi
push ebp
mov ecx, edi
call fcn.00428ae0
test eax, eax
je 0x4255a4
mov eax, dword [edi + 0x354]
mov al, byte [eax]
cmp al, 9
jb 0x4260a7
cmp al, 0x20
jbe 0x4265db
cmp al, 0x21
je 0x4265db
cmp al, 0x69
jb 0x4260bb
cmp al, 0x6b
jbe 0x4265db
cmp al, 0x71
jb 0x4260c7
cmp al, 0x73
jbe 0x4265db
mov ebp, dword [esp + 0x34]
mov ecx, ebp
push 0
push 0
push 0
push 0x67
call fcn.0042b030
test eax, eax
je 0x4255a4
mov eax, dword [ebp + 0x354]
mov dword [eax + 0xc], 1
jmp 0x4260f5
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x63]
push eax
lea edx, [esp + 0x84]
call fcn.0040e480
mov edi, eax
add esp, 4
test edi, edi
je 0x426191
test si, si
je 0x426131
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov word [edi + 6], si
jmp 0x4256e9
mov eax, dword [edi + 0x20]
test eax, eax
je 0x426150
mov ecx, dword [0x4ec070]
nop
cmp dword [eax + 4], ecx
je 0x4265fc
mov eax, dword [eax + 8]
test eax, eax
jne 0x426140
push dword [esp + 0x80]
mov ecx, edi
push dword [ebp + 0x364]
call fcn.0040dc10
test eax, eax
je 0x426623
cmp byte [esp + 0x63], 0
jne 0x42617c
cmp byte [0x4eb7cf], 0
je 0x4261f2
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov byte [edi + 0x14], 1
jmp 0x4256e9
mov ecx, dword [ebp + 0x364]
mov edx, esi
push 0
push dword [esp + 0x84]
push dword [ecx + 4]
call fcn.0040d370
add esp, 0xc
test eax, eax
jne 0x4261f2
cmp dword [esp + 0x64], 3
jne 0x4255a4
push dword [esp + 0x14]
lea eax, [esp + 0xe4]
push str.Note:_The_hotkey__s_will_not_be_active_because_it_does_not_exist_in_the_current_keyboard_layout.
push 0x80
push eax
call fcn.0049e100
push 0
push 0
xorps xmm3, xmm3
lea ecx, [esp + 0xf8]
mov edx, 0x10000
call fcn.004a4620
add esp, 0x18
mov edx, dword [esp + 0x24]
mov bl, byte [esp + 0x12]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
jmp 0x4256ed
mov bh, byte [esp + 0x13]
mov edx, dword [esp + 0x24]
mov bl, byte [esp + 0x12]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
jmp 0x4256ed
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
jmp 0x4256ed
mov byte [esi], bl
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
cmp byte [esi + ecx - 1], 0x3a
jne 0x4262fe
cmp esi, 1
je 0x42665c
mov al, byte [ecx]
mov edx, ecx
test al, al
je 0x42628b
mov bl, byte [0x4e9aaf]
mov ah, byte [0x4e9aad]
cmp al, 0x20
je 0x4262fe
cmp al, 9
je 0x4262fe
cmp al, bl
je 0x4262fe
cmp al, ah
je 0x4262fe
mov al, byte [edx + 1]
inc edx
test al, al
jne 0x426263
cmp byte [esi + ecx - 2], 0x3a
jne 0x426297
cmp esi, 2
ja 0x4262fe
mov byte [esi + ecx - 1], 0
push str.Default
push dword [esp + 0x18]
call fcn.004b626e
mov ebp, dword [esp + 0x3c]
add esp, 8
test eax, eax
jne 0x4262e4
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x4262e4
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4262e4
cmp byte [eax], 0x75
jne 0x4262e4
push 0
push 0
push 0
push 0x76
mov ecx, ebp
call fcn.0042b030
test eax, eax
je 0x4255a4
jmp 0x4256d9
push 0
push dword [esp + 0x18]
mov ecx, ebp
call fcn.004288e0
test eax, eax
je 0x4255a4
jmp 0x4256d9
cmp byte [ecx], 0x23
mov ebp, dword [esp + 0x34]
jne 0x42632a
mov esi, dword [ebp + 0x150]
push ecx
mov ecx, ebp
call fcn.00426f60
test eax, eax
je 0x4255a4
cmp eax, 3
je 0x4256c9
mov ecx, dword [esp + 0x14]
mov al, byte [ecx]
cmp al, 0x7b
je 0x426355
cmp al, 0x7d
je 0x426355
push 0
push 0
push 0
push 0
push 0
push 0
push ecx
mov ecx, ebp
call fcn.00428ae0
test eax, eax
je 0x4255a4
jmp 0x4256d9
cmp al, 0x7b
mov ecx, ebp
push 0
setne al
push 0
add al, 0x77
push 0
movzx eax, al
push eax
call fcn.0042b030
test eax, eax
je 0x4255a4
mov ebx, dword [esp + 0x14]
mov al, byte [ebx + 1]
inc ebx
cmp al, 0x20
je 0x426379
cmp al, 9
je 0x426379
mov edx, dword [esp + 0x24]
mov dword [esp + 0x14], ebx
cmp byte [ebx], 0
je 0x4256dd
lea ecx, [ebx + 1]
nop dword [eax]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x4263a0
sub ebx, ecx
mov dword [ebp + 0x38c], 0
mov dword [esp + 0x1c], ebx
jmp 0x424f77
mov eax, dword [esp + 0x14]
test dl, dl
mov cx, word [0x4d9c10]
push 0
push 1
mov word [eax], cx
mov eax, dword [esp + 0x1c]
mov cl, byte [0x4d9c12]
mov byte [eax + 2], cl
lea eax, [esp + 0x1c]
mov ecx, dword [esp + 0x3c]
push eax
setne al
add al, 0xc5
movzx eax, al
push eax
call fcn.0042b030
lea eax, [esp + 0xa0]
push eax
push str.Blind_s_Up
push dword [esp + 0x1c]
call fcn.004053b0
mov ecx, dword [esp + 0x40]
lea eax, [esp + 0x20]
add esp, 0xc
push 0
push 1
push eax
push 0x41
call fcn.0042b030
mov ecx, dword [esp + 0x34]
push 0
push 0
push 0
push 0x67
call fcn.0042b030
mov al, byte [esp + 0x42]
mov ch, bl
mov edx, dword [esp + 0x44]
mov cl, byte [esp + 0x3b]
mov dword [esp + 0x5c], edx
mov dh, byte [esp + 0x43]
mov byte [esp + 0x2b], ch
mov ch, byte [esp + 0x3a]
mov byte [esp + 0x1b], al
mov eax, dword [esp + 0x68]
mov byte [esp + 0x13], 0
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], ebp
mov byte [esp + 0x12], dh
mov dword [esp + 0x64], eax
mov byte [esp + 0x22], ch
mov byte [esp + 0x23], cl
mov dword [esp + 0x24], esi
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x60a8]
cmp dword [esp + 0x8c], edx
lea edi, [esp + 0xa0b0]
mov ebx, dword [esp + 0x48]
mov eax, edx
mov ebp, dword [esp + 0x34]
cmovne edi, eax
mov esi, dword [esp + 0x70]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x3c], edi
jmp 0x424740
mov ecx, dword [esp + 0x34]
push edi
push str.Continuation_section_too_long.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
cmp dword [ebp + 0x144], 0
lea eax, [esp + 0x160]
push eax
mov ecx, str.Not_a_valid_method__class_or_property_definition.
mov eax, 0x4dc2f8
cmove eax, ecx
mov ecx, ebp
push eax
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
lea eax, [esp + 0x160]
mov ecx, ebp
push eax
push 0x4dc2f8
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
lea eax, [esp + 0x160]
push eax
push str.Functions_cannot_contain_functions.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
mov ecx, dword [esp + 0x14]
push ecx
push str.Not_a_valid_property_getter_setter.
mov ecx, ebp
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
mov eax, dword [esp + 0x14]
push eax
push str.Not_a_valid_method__class_or_property_definition.
mov ecx, ebp
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push ecx
push str.IfWin_should_be_IfWin.
mov ecx, edx
mov dword [edx + 0x38c], eax
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
mov byte [ebp - 2], 0x3a
mov ecx, esi
push dword [esp + 0x14]
push str.Invalid_single_line_hotkey_hotstring.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push dword [esp + 0x14]
mov ecx, esi
push str.This_hotstring_is_missing_its_abbreviation.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
mov byte [ebp - 2], 0x3a
mov ecx, edi
push dword [esp + 0x14]
push str.Invalid_single_line_hotkey_hotstring.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push dword [esp + 0x14]
mov ecx, ebp
mov dword [ebp + 0x38c], 0
push str.Duplicate_hotkey.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push dword [esp + 0x14]
mov ecx, ebp
push str.Out_of_memory.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push ecx
mov ecx, dword [esp + 0x38]
push str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push ecx
mov ecx, dword [esp + 0x38]
push str.This_line_does_not_contain_a_recognized_action.
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push dword [esp + 0x14]
mov ecx, dword [esp + 0x38]
push 0x4dc2c8
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
cmp byte [esp + 0x160], 0
je 0x426709
cmp dword [esp + 0x2c], 0
mov eax, dword [esp + 0x30]
mov esi, dword [ebp + 0x150]
mov dword [ebp + 0x150], eax
lea eax, [esp + 0x160]
je 0x4266e7
cmp byte [esp + 0x1b], 0
mov ecx, 0x4dc2f8
push eax
mov eax, str.Missing___
cmove eax, ecx
mov ecx, ebp
push eax
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
push 0
push 0
push 0
push 0
push 0
push 3
push eax
mov ecx, ebp
call fcn.00428ae0
test eax, eax
je 0x4255a4
mov dword [ebp + 0x150], esi
cmp dword [ebp + 0x28], 0
je 0x426733
cmp dword [esp + 0x74], 0
jne 0x426733
lea eax, [ebp + 0x40]
mov ecx, ebp
push eax
push str.Missing___
call fcn.0043ed90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4
inc dword [ebp + 0x150]
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xe0a8
ret 4