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

Disassembly:
mov eax, 0x1a180
call fcn.004c5460
push ebx
push ebp
push esi
xor eax, eax
mov dword [esp + 0x60], 0xffffffff
push edi
push dword [esp + 0x1a194]
mov word [esp + 0x217c], ax
lea esi, [esp + 0xa184]
xor al, al
mov dword [esp + 0x1c], esi
mov ebp, ecx
mov byte [esp + 0x1b], al
mov ecx, dword [0x4f846c]
lea edi, [esp + 0x1218c]
xor eax, eax
mov dword [esp + 0x28], ebp
dec ecx
mov word [esp + 0x52], ax
push eax
mov word [esp + 0x60], ax
mov eax, esi
push ecx
push eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x58], esi
mov dword [esp + 0x3c], edi
mov dword [ebp + 0x24c], ecx
call fcn.00425ff0
mov ebx, eax
mov eax, esi
push 2
push 0x4e4a40
push eax
mov dword [esp + 0x44], ebx
call fcn.004b7458
add esp, 0xc
test eax, eax
sete byte [esp + 0x2b]
test eax, eax
jne 0x423f90
mov word [esp + 0xa180], ax
xor ebx, ebx
mov dword [esp + 0x38], ebx
nop word [eax + eax]
mov dword [esp + 0x84], edi
cmp ebx, 0xffffffff
je 0x425d3e
mov eax, dword [esp + 0x64]
push 0xc
inc eax
mov dword [ebp + 0x64c], 0
push str.CommentFlag
push esi
mov dword [ebp + 0x250], eax
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x423fd9
push esi
mov ecx, ebp
call fcn.004262b0
test eax, eax
je 0x424dd8
mov byte [esp + 0x74], 0
xor ebp, ebp
jmp 0x423ff4
mov dword [esp + 0x38], ebx
nop word [eax + eax]
mov edi, dword [esp + 0x2c]
push dword [esp + 0x1a194]
inc dword [esp + 0x68]
push ebp
push ecx
push edi
call fcn.00425ff0
mov edx, eax
mov dword [esp + 0x3c], edx
test edx, edx
je 0x4240bb
cmp edx, 0xffffffff
je 0x4240bb
test ebp, ebp
jne 0x4240bb
push 2
push 0x4e4a64
push edi
call fcn.004b7458
add esp, 0xc
test eax, eax
jne 0x42408e
cmp byte [esp + 0x2b], al
jne 0x42404e
cmp word [edi + 4], 0x3a
jne 0x42404e
cmp word [edi + 6], 0x3a
je 0x424099
mov edi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x2c]
mov byte [esp + 0x2b], 0
lea eax, [edi*2 - 2]
push eax
lea eax, [ecx + 4]
push eax
push ecx
call fcn.004ad510
add esp, 0xc
lea edx, [edi - 2]
mov edi, dword [esp + 0x2c]
mov ecx, edi
call fcn.00420a60
cmp word [edi], 0
mov dword [esp + 0x3c], eax
je 0x423ff4
jmp 0x424099
cmp byte [esp + 0x2b], 0
jne 0x423ff4
push 2
push 0x4e4a40
push edi
call fcn.004b7458
add esp, 0xc
test eax, eax
jne 0x4240b7
mov byte [esp + 0x2b], 1
jmp 0x423ff4
mov edx, dword [esp + 0x3c]
cmp byte [esp + 0x2b], 0
je 0x4240d0
cmp edx, 0xffffffff
jne 0x423ff4
jmp 0x4247be
test ebp, ebp
jne 0x424597
cmp edx, 0xffffffff
je 0x424304
cmp word [edi], 0x28
jne 0x424304
movzx eax, word [edi + 2]
add edi, 2
mov ecx, eax
cmp eax, 0x3a
je 0x424300
mov eax, dword [esp + 0x2c]
cmp word [eax + edx*2 - 2], 0x3a
je 0x424300
mov al, byte [0x4f797e]
mov ebp, 1
mov byte [esp + 0x41], al
mov eax, ecx
mov dword [esp + 0x70], 0
mov byte [esp + 0x40], 1
mov byte [esp + 0x42], 0
mov byte [esp + 0x43], 0
mov byte [esp + 0x44], 1
mov dword [esp + 0x98], 0xa
mov dword [esp + 0x68], ebp
movzx eax, ax
cmp eax, 0x20
je 0x424155
cmp eax, 9
jne 0x42415e
movzx eax, word [edi + 2]
add edi, 2
jmp 0x424148
test ax, ax
je 0x4242f6
mov ebx, edi
test edi, edi
je 0x4241b1
movzx eax, word [edi]
test ax, ax
je 0x4241b1
mov esi, eax
nop word [eax + eax]
mov ecx, 0x4e2ac4
mov edx, 0x20
nop word [eax + eax]
cmp si, dx
je 0x4241c8
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x424190
movzx eax, word [ebx + 2]
add ebx, 2
mov esi, eax
test ax, ax
jne 0x424180
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4241b6
sub ecx, edx
sar ecx, 1
lea ebx, [edi + ecx*2]
movzx esi, word [ebx]
xor eax, eax
push 4
push str.Join
push edi
mov word [ebx], ax
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x424238
push 0xf
lea eax, [edi + 8]
push eax
lea eax, [esp + 0xa0]
push eax
call fcn.004b3100
add esp, 0xc
lea ecx, [esp + 0x98]
xor eax, eax
mov word [esp + 0xb6], ax
push 1
call fcn.004940b0
lea edx, [esp + 0x9c]
add esp, 4
lea ecx, [edx + 2]
nop
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x424220
sub edx, ecx
sar edx, 1
mov dword [esp + 0x68], edx
jmp 0x4242c3
push 5
push 0x4e4b0c
push edi
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x424258
cmp word [edi + 0xa], 0x30
setne byte [esp + 0x41]
jmp 0x4242c3
push 5
push str.RTrim
push edi
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x424278
cmp word [edi + 0xa], 0x30
setne byte [esp + 0x40]
jmp 0x4242c3
movzx eax, word [edi]
test ax, ax
je 0x4242c3
mov ecx, eax
movzx eax, cx
add eax, 0xffffffdb
cmp eax, 0x3e
ja case.0x424294.38
movzx eax, byte [eax + 0x425e0c]
jmp dword [eax*4 + 0x425df4]
mov byte [esp + 0x42], 1
jmp case.0x424294.38
mov byte [esp + 0x43], 1
jmp case.0x424294.38
mov byte [esp + 0x44], 0
jmp case.0x424294.38
mov ebp, 2
movzx eax, word [edi + 2]
add edi, 2
mov ecx, eax
test ax, ax
jne 0x424282
mov word [ebx], si
mov edi, ebx
mov eax, esi
nop word [eax + eax]
cmp ax, 0x20
je 0x4242dc
cmp ax, 9
jne 0x4242e5
movzx eax, word [edi + 2]
add edi, 2
jmp 0x4242d0
test ax, ax
jne 0x424167
mov ebx, dword [esp + 0x38]
mov esi, dword [esp + 0x18]
mov byte [esp + 0x74], 1
jmp 0x423ff0
mov edi, dword [esp + 0x2c]
xor ebp, ebp
cmp edx, 0xffffffff
je 0x4247be
test edx, edx
je 0x423ff4
cmp word [edi + edx*2 - 2], 0x3a
jne 0x424329
cmp word [edi], 0x2c
jne 0x4247be
movzx esi, word [edi]
test esi, 0xffffff80
je 0x424338
xor ecx, ecx
jmp 0x424345
push 2
push esi
call fcn.004b15e4
add esp, 8
mov ecx, eax
mov eax, esi
and eax, 0xffffffdf
test ecx, ecx
cmove eax, esi
cmp eax, 0x41
je 0x4244f9
cmp eax, 0x4f
je 0x4244bc
movzx eax, word [edi]
cmp eax, 0x3a
je 0x424373
cmp eax, 0x2b
je 0x424373
cmp eax, 0x2d
jne 0x42437d
cmp word [edi + 2], ax
je 0x4247be
push eax
push str.____:.___
call fcn.004ace17
add esp, 8
test eax, eax
je 0x4247be
push 0x4e4aac
push edi
call fcn.004acede
mov edi, eax
add esp, 8
test edi, edi
je 0x424551
mov eax, dword [esp + 0x2c]
cmp word [eax], 0x3a
jne 0x424411
lea esi, [eax + 2]
movzx eax, word [esi]
test ax, ax
je 0x424407
mov ecx, eax
cmp cx, 0x3a
je 0x424407
movzx eax, cx
test eax, 0xffffff80
jne 0x4243e4
push 0x107
push eax
call fcn.004b15e4
add esp, 8
test eax, eax
jne 0x4243f9
movzx eax, word [esi]
push eax
push str.____t
call fcn.004ace17
add esp, 8
test eax, eax
je 0x424411
movzx eax, word [esi + 2]
add esi, 2
mov ecx, eax
test ax, ax
jne 0x4243c2
cmp word [esi], 0x3a
je 0x4247be
mov ecx, dword [esp + 0x2c]
cmp word [ecx], 0x2c
jne 0x42446a
lea esi, [ecx + 2]
nop
movzx eax, word [esi]
cmp eax, 0x20
je 0x42442d
cmp eax, 9
jne 0x424432
add esi, 2
jmp 0x424420
push 2
push 0x4e4aac
push esi
call fcn.004b7458
add esp, 0xc
test eax, eax
je 0x4247be
push 3
lea eax, [esi - 2]
push 0x4e2ab4
push eax
call fcn.004b7458
add esp, 0xc
test eax, eax
je 0x4247be
jmp 0x424551
mov eax, ecx
cmp ecx, edi
jae 0x42447d
cmp word [eax], 0x22
je 0x42447d
add eax, 2
cmp eax, edi
jb 0x424470
cmp eax, edi
je 0x4247be
movzx eax, word [edi + 4]
lea edx, [edi + 4]
mov esi, eax
test ax, ax
je 0x4244ae
mov ecx, eax
movzx esi, cx
cmp cx, 0x22
je 0x4244ae
movzx eax, word [edx + 2]
add edx, 2
mov ecx, eax
mov esi, eax
test ax, ax
jne 0x424495
test si, si
je 0x4247be
jmp 0x424551
mov cx, word [edi + 2]
call fcn.0040ba80
cmp ax, 0x52
jne 0x4247be
movzx eax, word [edi + 4]
lea ecx, [edi + 4]
cmp eax, 0x20
je 0x4244e4
cmp eax, 9
jne 0x4247be
cmp ax, 0x20
je 0x4244f0
cmp ax, 9
jne 0x42453b
movzx eax, word [ecx + 2]
add ecx, 2
jmp 0x4244e4
push 3
push 0x4e4a6c
push edi
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x4247be
movzx eax, word [edi + 6]
lea ecx, [edi + 6]
cmp eax, 0x20
je 0x424526
cmp eax, 9
jne 0x4247be
cmp ax, 0x20
je 0x424532
cmp ax, 9
jne 0x42453b
movzx eax, word [ecx + 2]
add ecx, 2
jmp 0x424526
push eax
push str.____:
call fcn.004ace17
add esp, 8
test eax, eax
jne 0x4247be
mov edi, dword [esp + 0x3c]
lea eax, [edi + ebx]
cmp eax, 0x4000
jae 0x425b69
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
cmp word [ecx], 0x2c
je 0x42457b
mov eax, 0x20
mov word [esi + ebx*2], ax
inc ebx
lea eax, [edi*2 + 2]
push eax
push ecx
lea eax, [esi + ebx*2]
push eax
call fcn.004aef60
add esp, 0xc
add ebx, edi
jmp 0x423fe2
cmp edx, 0xffffffff
je 0x425d22
cmp edx, 0xfffffffe
je 0x423ff4
cmp word [edi], 0x29
jne 0x424618
mov edx, edi
xor ebp, ebp
lea ecx, [edx + 2]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x4245b6
sub edx, ecx
sar edx, 1
lea eax, [edx - 1]
lea eax, [edi + eax*2]
nop dword [eax + eax]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x4245dd
cmp ecx, 9
jne 0x4245e7
cmp eax, edi
je 0x4245fa
sub eax, 2
dec edx
jmp 0x4245d0
xor ecx, ecx
add edi, 2
dec edx
mov word [eax + 2], cx
mov dword [esp + 0x3c], edx
jmp 0x42473d
cmp ecx, 0x20
je 0x424604
cmp ecx, 9
jne 0x42460b
xor ecx, ecx
xor edx, edx
mov word [eax], cx
add edi, 2
dec edx
mov dword [esp + 0x3c], edx
jmp 0x42473d
cmp byte [esp + 0x40], 0
mov esi, dword [esp + 0x2c]
je 0x424630
mov ecx, esi
call fcn.00420ad0
mov edx, eax
mov dword [esp + 0x3c], edx
cmp byte [esp + 0x41], 0
je 0x424642
mov ecx, esi
call fcn.00420a60
mov dword [esp + 0x3c], eax
xor esi, esi
cmp byte [esp + 0x42], 0
je 0x424682
mov ax, word [0x4f5b24]
lea edx, [esp + 0x4c]
mov ecx, dword [esp + 0x2c]
push esi
push esi
push 0x4001
push 0xffffffffffffffff
mov word [esp + 0x5c], ax
mov word [esp + 0x64], ax
mov word [esp + 0x66], ax
lea eax, [esp + 0x64]
push 1
push eax
call fcn.00492590
add esp, 0x18
mov esi, eax
cmp byte [esp + 0x43], 0
je 0x4246c9
mov ax, word [0x4f5b24]
lea edx, [esp + 0x4c]
mov cx, word [0x4f5b28]
push 0
push 0
push 0x4001
push 0xffffffffffffffff
mov word [esp + 0x64], ax
lea eax, [esp + 0x64]
mov word [esp + 0x5c], cx
mov word [esp + 0x66], cx
mov ecx, dword [esp + 0x3c]
push 1
push eax
call fcn.00492590
add esp, 0x18
add esi, eax
cmp byte [esp + 0x44], 0
je 0x424710
mov ax, word [0x4f5b24]
lea edx, [esp + 0x4c]
mov cx, word [0x4f5b2c]
push 0
push 0
push 0x4001
push 0xffffffffffffffff
mov word [esp + 0x64], ax
lea eax, [esp + 0x64]
mov word [esp + 0x5c], cx
mov word [esp + 0x66], cx
mov ecx, dword [esp + 0x3c]
push 1
push eax
call fcn.00492590
add esp, 0x18
add esi, eax
test esi, esi
je 0x424735
mov edx, dword [esp + 0x2c]
lea ecx, [edx + 2]
nop dword [eax + eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x424720
sub edx, ecx
sar edx, 1
mov dword [esp + 0x3c], edx
jmp 0x424739
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x68]
lea eax, [ecx + edx]
add eax, ebx
cmp eax, 0x4001
jae 0x425d06
mov eax, dword [esp + 0x70]
inc eax
mov dword [esp + 0x70], eax
cmp eax, 1
jle 0x424791
test ecx, ecx
je 0x424791
cmp edi, dword [esp + 0x2c]
jne 0x424791
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x9c]
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.004aef60
mov edx, dword [esp + 0x48]
add esp, 0xc
add ebx, dword [esp + 0x68]
mov dword [esp + 0x38], ebx
test edx, edx
je 0x423ff0
lea eax, [edx*2 + 2]
push eax
lea eax, [esi + ebx*2]
push edi
push eax
call fcn.004aef60
add esp, 0xc
add ebx, dword [esp + 0x3c]
jmp 0x423fe2
mov word [ebx], si
mov ebx, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
test ebx, ebx
je 0x424ecb
cmp word [esp + 0x2178], 0
je 0x42494b
mov esi, dword [ebp + 0x250]
mov eax, dword [esp + 0x60]
mov dword [ebp + 0x250], eax
cmp word [edi], 0x7b
je 0x42483c
cmp byte [esp + 0x1f], 0
jne 0x42483c
mov ebx, dword [esp + 0x50]
test ebx, ebx
jne 0x425bb9
cmp dword [ebp + 0x28], ebx
je 0x42481c
mov eax, dword [0x4f48cc]
cmp dword [eax + 0xb4], ebx
je 0x425b88
push 0
push 0
push 0
push 0
push 0
push 3
lea eax, [esp + 0x2190]
mov ecx, ebp
push eax
call fcn.004278c0
jmp 0x4248d0
mov ebx, dword [esp + 0x50]
mov eax, ebx
sub eax, 0
je 0x424889
sub eax, 1
je 0x424866
sub eax, 1
jne 0x4248e2
lea eax, [esp + 0x2178]
mov ecx, ebp
push eax
call fcn.0042c7b0
jmp 0x424875
lea eax, [esp + 0x2178]
mov ecx, ebp
push eax
call fcn.0042c230
test eax, eax
je 0x424dd8
xor eax, eax
mov word [esp + 0x2178], ax
jmp 0x4248f0
mov eax, dword [0x4f48cc]
mov ecx, ebp
cmp dword [eax + 0xb4], 0
jne 0x425bda
lea eax, [esp + 0x238]
push eax
lea eax, [esp + 0x217c]
push eax
call fcn.0042b840
test eax, eax
je 0x424dd8
cmp byte [esp + 0x1f], 0
je 0x4248e2
push 0
push 0
push 0
push 0x77
mov ecx, ebp
call fcn.00429cf0
test eax, eax
je 0x424dd8
mov dword [ebp + 0x64c], 0
xor eax, eax
mov word [esp + 0x2178], ax
test ebx, ebx
je 0x424945
cmp byte [esp + 0x1f], 0
jne 0x424945
lea ecx, [edi + 2]
nop word [eax + eax]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42490d
cmp eax, 9
jne 0x424912
add ecx, 2
jmp 0x424900
test ax, ax
je 0x424ec5
mov ebx, ecx
lea edx, [ebx + 2]
mov ax, word [ebx]
add ebx, 2
test ax, ax
jne 0x424920
sub ebx, edx
sar ebx, 1
mov dword [esp + 0x38], ebx
lea eax, [ebx*2 + 2]
push eax
push ecx
push edi
call fcn.004ad510
add esp, 0xc
mov dword [ebp + 0x250], esi
movzx ecx, word [edi]
cmp ecx, 0x7d
jne 0x424a92
mov edx, dword [ebp + 0x28]
test edx, edx
je 0x424a92
mov eax, dword [0x4f48cc]
cmp dword [eax + 0xb4], 0
jne 0x424a92
cmp dword [ebp + 0x244], 0
je 0x4249ad
mov eax, dword [ebp + 0x248]
mov dword [ebp + 0x244], 0
test eax, eax
je 0x424a39
push eax
call fcn.004b113e
add esp, 4
mov dword [ebp + 0x248], 0
jmp 0x424a39
lea eax, [edx - 1]
mov dword [ebp + 0x28], eax
mov ebx, dword [ebp + eax*4 + 0x2c]
mov esi, dword [ebx + 0x10]
sub esi, 1
js 0x424a11
mov edi, esi
shl edi, 4
mov eax, dword [ebx + 0xc]
cmp dword [edi + eax + 0xc], 1
jne 0x424a02
cmp esi, dword [ebx + 0x1c]
jl 0x4249df
push dword [edi + eax + 8]
call fcn.004b113e
add esp, 4
mov edx, dword [ebx + 0x10]
dec edx
mov dword [ebx + 0x10], edx
cmp esi, edx
jge 0x424a02
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.004ad510
add esp, 0xc
sub edi, 0x10
sub esi, 1
jns 0x4249c4
mov eax, dword [ebp + 0x28]
mov edi, dword [esp + 0x18]
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.004ad15a
add esp, 8
test eax, eax
je 0x424a34
xor ecx, ecx
mov word [eax], cx
jmp 0x424a39
xor eax, eax
mov word [esi], ax
add edi, 2
mov dword [esp + 0x18], edi
movzx eax, word [edi]
cmp eax, 0x20
je 0x424a4d
cmp eax, 9
jne 0x424a52
add edi, 2
jmp 0x424a40
mov dword [esp + 0x18], edi
mov dword [esp + 0x48], edi
test ax, ax
je 0x424ecb
mov ebx, edi
lea ecx, [ebx + 2]
nop dword [eax + eax]
mov ax, word [ebx]
add ebx, 2
test ax, ax
jne 0x424a70
sub ebx, ecx
mov dword [ebp + 0x64c], 0
sar ebx, 1
mov dword [esp + 0x38], ebx
jmp 0x4247c6
cmp dword [ebp + 0x244], 0
je 0x424b6b
mov eax, dword [0x4f48cc]
cmp dword [eax + 0xb4], 0
jne 0x424b6b
push 3
push 0x4e4c04
push edi
call fcn.004af905
add esp, 0xc
test eax, eax
je 0x424add
push 3
push 0x4e4c0c
push edi
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x425bf9
lea esi, [edi + 6]
movzx eax, word [esi]
cmp eax, 0x20
je 0x424aed
cmp eax, 9
jne 0x424af2
add esi, 2
jmp 0x424ae0
test ax, ax
je 0x424b0b
cmp eax, 0x7b
jne 0x425bf9
cmp word [esi + 2], 0
jne 0x425bf9
mov ecx, dword [ebp + 0x248]
lea edx, [esp + 0x2178]
sub edx, ecx
nop word [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [ecx + edx - 2], ax
test ax, ax
jne 0x424b20
lea eax, [esp + 0x2178]
push 0x2e
push eax
call fcn.004ace17
mov ecx, eax
mov dword [esp + 0x58], 0
mov ax, word [edi]
add esp, 8
mov word [ecx + 2], ax
cmp word [esi], 0x7b
mov eax, dword [ebp + 0x250]
mov dword [esp + 0x60], eax
sete byte [esp + 0x1f]
jmp 0x424ecb
test cx, cx
je 0x424ba1
mov esi, ecx
mov ecx, str.__t____:_______.___
mov edx, 0x20
nop dword [eax]
cmp si, dx
je 0x424bfa
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x424b80
movzx eax, word [edi + 2]
add edi, 2
mov esi, eax
test ax, ax
jne 0x424b72
mov eax, dword [0x4f48cc]
mov edi, dword [esp + 0x18]
cmp dword [eax + 0xb4], 0
jne 0x42501d
push 5
push str.Class
push edi
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x424d47
movzx eax, word [edi + 0xa]
cmp eax, 0x20
je 0x424be1
cmp eax, 9
jne 0x424d47
lea esi, [edi + 0xc]
movzx eax, word [esi]
cmp eax, 0x20
je 0x424bf5
cmp eax, 9
jne 0x424cca
add esi, 2
jmp 0x424be4
cmp word [edi], 0x28
jne 0x424ba1
mov ebx, dword [esp + 0x18]
cmp edi, ebx
je 0x424ba1
mov esi, edi
mov edx, 0x4e49d8
sub esi, ebx
mov ecx, ebx
sar esi, 1
push 0xffffffffffffffff
push esi
call fcn.00491e80
add esp, 8
test eax, eax
je 0x424ba1
push 0xffffffffffffffff
push esi
mov edx, str.WHILE
mov ecx, ebx
call fcn.00491e80
add esp, 8
test eax, eax
je 0x424ba1
cmp word [edi + 2], 0x3a
je 0x424ba1
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x424c52
sub ecx, edx
sar ecx, 1
dec ecx
movzx eax, word [edi + ecx*2]
lea edx, [edi + ecx*2]
mov edi, dword [esp + 0x18]
cmp eax, 0x7b
mov ecx, eax
sete byte [esp + 0x1f]
jne 0x424c8e
xor eax, eax
mov ecx, edi
mov word [edx], ax
sub edx, edi
sar edx, 1
call fcn.00420ad0
movzx ecx, word [edi + eax*2 - 2]
cmp cx, 0x29
jne 0x424ba1
lea edx, [esp + 0x2178]
mov ecx, edi
sub edx, edi
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [ecx + edx - 2], ax
test ax, ax
jne 0x424ca3
mov eax, dword [ebp + 0x250]
mov dword [esp + 0x60], eax
mov dword [esp + 0x50], 0
jmp 0x424ecb
push eax
push str.__t____:_______.___
call fcn.004ace17
add esp, 8
test eax, eax
jne 0x424d47
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x424ce1
sub ecx, edx
sar ecx, 1
lea edx, [ecx - 1]
movzx eax, word [esi + edx*2]
lea edx, [esi + edx*2]
cmp eax, 0x7b
sete byte [esp + 0x1f]
jne 0x424d14
xor eax, eax
mov ecx, edi
mov word [edx], ax
sub edx, edi
sar edx, 1
call fcn.00420ad0
lea ecx, [esp + 0x2178]
sub ecx, esi
nop dword [eax]
movzx eax, word [esi]
lea esi, [esi + 2]
mov word [esi + ecx - 2], ax
test ax, ax
jne 0x424d20
mov eax, dword [ebp + 0x250]
mov dword [esp + 0x60], eax
mov dword [esp + 0x50], 1
jmp 0x424ecb
cmp dword [ebp + 0x28], 0
je 0x42501d
mov esi, edi
movzx eax, word [esi]
mov ecx, eax
test ecx, 0xffffff80
je 0x424d62
jmp 0x424d77
push 0x107
push ecx
call fcn.004b15e4
movzx ecx, word [esi]
add esp, 8
test eax, eax
jne 0x424d89
cmp cx, 0x5f
je 0x424d89
cmp cx, 0x7f
ja 0x424d89
cmp cx, 0x2e
jne 0x424d8e
add esi, 2
jmp 0x424d53
cmp esi, edi
jbe 0x424e59
movzx eax, cx
nop dword [eax]
cmp ax, 0x20
je 0x424dac
cmp ax, 9
jne 0x424db5
movzx eax, word [esi + 2]
add esi, 2
jmp 0x424da0
cmp ax, 0x3a
jne 0x424de7
cmp word [esi + 2], 0x3d
jne 0x424e59
push 0
push edi
mov ecx, ebp
call fcn.0042c960
test eax, eax
jne 0x424ecb
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
test ax, ax
je 0x424dff
cmp ax, 0x5b
je 0x424dff
cmp ax, 0x7b
jne 0x424e59
cmp word [esi + 2], 0
jne 0x424e59
mov edx, edi
lea ecx, [edx + 2]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x424e04
sub edx, ecx
sar edx, 1
movzx eax, word [edi + edx*2 - 2]
cmp eax, 0x7b
sete byte [esp + 0x1f]
jne 0x424e2a
dec edx
mov ecx, edi
call fcn.00420ad0
lea edx, [esp + 0x2178]
mov ecx, edi
sub edx, edi
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [ecx + edx - 2], ax
test ax, ax
jne 0x424e35
mov eax, dword [ebp + 0x250]
mov dword [esp + 0x60], eax
mov dword [esp + 0x50], 2
jmp 0x424ecb
push 6
push str.Static
push edi
call fcn.004af905
add esp, 0xc
test eax, eax
jne 0x424e92
movzx eax, word [edi + 0xc]
cmp eax, 0x20
je 0x424e7b
cmp eax, 9
jne 0x424e92
push 1
lea eax, [edi + 0xe]
mov ecx, ebp
push eax
call fcn.0042c960
test eax, eax
je 0x424dd8
jmp 0x424ecb
cmp word [edi], 0x23
jne 0x425c13
mov esi, dword [ebp + 0x250]
mov ecx, ebp
push edi
call fcn.004262b0
test eax, eax
je 0x424dd8
cmp eax, 3
jne 0x425c13
mov eax, dword [esp + 0x6c]
mov dword [ebp + 0x24c], eax
mov dword [ebp + 0x250], esi
mov esi, dword [esp + 0x20]
mov dl, byte [esp + 0x17]
mov eax, esi
test dl, dl
je case.0x424ef2.3
inc esi
mov dword [esp + 0x20], esi
cmp eax, 9
ja case.0x424ef2.3
movzx eax, byte [eax + 0x425e60]
jmp dword [eax*4 + 0x425e4c]
lea eax, [esp + 0xf8]
push eax
push str._s::
push edi
call fcn.00405640
jmp 0x425016
mov eax, dword [0x4e2608]
mov ecx, ebp
cmp byte [esp + 0x33], 0
mov dword [edi], eax
mov ax, word [0x4e260c]
mov word [edi + 4], ax
lea eax, [esp + 0x48]
push 0
push 1
push eax
setne al
add al, 0xc5
movzx eax, al
push eax
call fcn.00429cf0
cmp byte [esp + 0x46], 0
je 0x424f67
lea eax, [esp + 0xb8]
push eax
push str.if_not_GetKeyState___s__
push edi
call fcn.00405640
mov dword [esp + 0x2c], 9
jmp 0x425016
mov dl, byte [esp + 0x17]
mov ecx, 0x4cd2cc
cmp dl, 0x12
je 0x424f7d
mov al, dl
add al, 0x5c
cmp al, 1
ja 0x424f9f
movzx eax, byte [esp + 0x45]
sub eax, 0x11
je 0x424f9a
sub eax, 0x91
je 0x424f9a
sub eax, 1
jne 0x424f9f
mov ecx, str.RCtrl_up
jmp 0x424f9f
mov ecx, str.LCtrl_up
lea eax, [esp + 0xb8]
mov dword [ebp + 0x64c], 0
push eax
lea eax, [esp + 0x8c]
push eax
push ecx
push str.Blind_s_s_s_DownR
push edi
call fcn.00405640
add esp, 0x14
lea eax, [esp + 0x48]
mov ecx, ebp
push 0
push 1
push eax
push 0x41
call fcn.00429cf0
test eax, eax
je 0x424dd8
push 0
push 0
push 0
push 0x67
mov ecx, ebp
call fcn.00429cf0
lea eax, [esp + 0xf8]
mov dword [ebp + 0x64c], 0
push eax
push str._s_up::
push edi
call fcn.00405640
mov dword [esp + 0x2c], 2
add esp, 0xc
mov dword [esp + 0x38], eax
xor ebx, ebx
mov dword [esp + 0x5c], 0
cmp word [edi], 0x3a
mov dword [esp + 0x34], ebx
jne 0x4251fa
movzx ecx, word [edi + 2]
test cx, cx
je 0x4251fa
lea edx, [edi + 2]
mov dword [esp + 0x78], edx
cmp ecx, 0x3a
je 0x425075
push 0x3a
push edx
call fcn.004ace17
mov ebp, eax
add esp, 8
test ebp, ebp
jne 0x425068
mov dword [esp + 0x5c], ebx
jmp 0x4251fa
mov edx, dword [esp + 0x78]
add ebp, 2
mov dword [esp + 0x5c], ebp
jmp 0x425088
cmp word [edi + 4], bx
lea eax, [edi + 4]
je 0x4251fa
mov ebp, eax
mov dword [esp + 0x5c], eax
test ebp, ebp
je 0x4251fa
mov al, byte [0x4f78fc]
mov edi, edx
mov byte [esp + 0x32], al
cmp edx, ebp
jae 0x4250e5
nop
movzx esi, word [edi]
test esi, 0xffffff80
je 0x4250af
xor edx, edx
jmp 0x4250bc
push 2
push esi
call fcn.004b15e4
add esp, 8
mov edx, eax
mov eax, esi
add edi, 2
and eax, 0xffdf
test edx, edx
movzx ecx, ax
mov eax, esi
cmove ecx, eax
cmp cx, 0x58
je 0x4250dc
cmp edi, ebp
jb 0x4250a0
jmp 0x4250e5
cmp word [edi], 0x30
setne byte [esp + 0x32]
mov esi, ebp
mov ecx, ebx
mov bp, word [0x4f5b24]
movzx eax, word [esi]
mov ebx, ecx
mov edx, eax
test ax, ax
je 0x425125
mov ecx, eax
nop
movzx edx, cx
cmp cx, bp
je 0x425121
movzx edx, cx
cmp cx, 0x3a
je 0x425121
movzx eax, word [esi + 2]
add esi, 2
mov ecx, eax
mov edx, eax
test ax, ax
jne 0x425100
mov ecx, dword [esp + 0x34]
test dx, dx
je 0x4251ea
movzx eax, word [esi + 2]
lea edi, [esi + 2]
cmp dx, 0x3a
jne 0x425163
cmp eax, 0x3a
jne 0x42514d
cmp byte [esp + 0x32], 0
mov ecx, esi
jne 0x4251ea
cmp eax, 0x3a
mov ecx, esi
cmovne edi, esi
cmovne ecx, ebx
mov esi, edi
mov dword [esp + 0x34], ecx
add esi, 2
jmp 0x4250f0
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x425172.99
movzx eax, byte [eax + 0x425e8c]
jmp dword [eax*4 + 0x425e6c]
mov eax, 7
jmp 0x4251a8
mov eax, 8
jmp 0x4251a8
mov eax, 0xc
jmp 0x4251a8
mov eax, 0xa
jmp 0x4251a8
mov eax, 0xd
jmp 0x4251a8
mov eax, 9
jmp 0x4251a8
mov eax, 0xb
mov word [edi], ax
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4251b0
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
push edi
push esi
call fcn.004ad510
mov ecx, dword [esp + 0x40]
add esp, 0xc
cmp word [esi], 0x3a
jne 0x4251e2
cmp word [edi], 0x3a
cmove esi, edi
add esi, 2
jmp 0x4250f0
test ecx, ecx
jne 0x42529c
mov edi, dword [esp + 0x18]
mov dword [esp + 0x5c], ecx
push 0x4e4aac
push edi
call fcn.004acede
mov ebx, eax
add esp, 8
mov dword [esp + 0x34], ebx
test ebx, ebx
je 0x425918
cmp ebx, edi
jne 0x425228
cmp word [ebx + 4], 0x3a
jne 0x425228
add ebx, 2
mov dword [esp + 0x34], ebx
mov esi, ebx
cmp ebx, edi
jbe 0x425244
nop
movzx eax, word [esi]
cmp eax, 0x20
je 0x42523d
cmp eax, 9
jne 0x425244
sub esi, 2
cmp esi, edi
ja 0x425230
movzx edi, word [esi]
xor eax, eax
mov ecx, dword [esp + 0x18]
mov word [esi], ax
movzx eax, word [ecx]
cmp eax, 0x20
je 0x42525d
cmp eax, 9
jne 0x425262
add ecx, 2
jmp 0x425250
push 0
xor edx, edx
call fcn.0040dc60
add esp, 4
mov dword [esp + 0x80], eax
test eax, eax
je 0x425288
cmp eax, 4
je 0x424dd8
mov ecx, dword [esp + 0x34]
jmp 0x42528a
xor ecx, ecx
mov word [esi], di
test ecx, ecx
je 0x425914
mov bp, word [0x4f5b24]
mov edi, dword [esp + 0x18]
cmp ecx, edi
jbe 0x42591f
mov eax, dword [0x4f48cc]
cmp dword [eax + 0xb4], 0
jne 0x425cce
mov edx, dword [esp + 0x24]
mov eax, dword [edx + 0x614]
test eax, eax
je 0x4252d1
cmp byte [eax], 0x1a
je 0x425c2d
mov ebp, dword [esp + 0x5c]
xor eax, eax
mov word [ecx], ax
add ecx, 4
mov dword [esp + 0x34], ecx
test ebp, ebp
jne 0x425686
movzx eax, word [ecx]
test ax, ax
je 0x42533d
mov edx, ecx
cmp ax, 0x20
je 0x4252ff
cmp ax, 9
jne 0x425308
movzx eax, word [edx + 2]
add edx, 2
jmp 0x4252f3
mov eax, edx
sub eax, ecx
cmp eax, 2
jb 0x42533d
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x425316
mov ebx, dword [esp + 0x34]
sub ecx, esi
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
push edx
push ebx
call fcn.004ad510
add esp, 0xc
mov ecx, ebx
cmp word [ecx], 0
mov edi, ecx
je 0x425384
cmp word [ecx + 2], 0
je 0x425469
push 0
xor edx, edx
call fcn.0040dda0
add esp, 4
mov edi, eax
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push ecx
push 0
xor edx, edx
mov ecx, edi
call fcn.004155c0
mov bh, al
add esp, 0xc
mov byte [esp + 0x17], bh
test bh, bh
jne 0x425470
mov ebx, dword [esp + 0x34]
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x24]
cmp byte [esi + 0x254], 0
je 0x4253d1
push 0
push 0xff
push 0
push 0x67
mov ecx, esi
mov byte [esi + 0x254], 0
call fcn.00429cf0
test eax, eax
je 0x424dd8
mov eax, dword [esi + 0x614]
mov dword [eax + 0xc], 1
mov dword [esi + 0x64c], 0
push 1
push edi
mov ecx, esi
call fcn.00427780
test eax, eax
je 0x424dd8
test ebp, ebp
je 0x425708
cmp word [ebp], 0
je 0x425c70
cmp byte [esp + 0x32], 0
mov eax, 0x4cd2cc
mov edx, dword [esp + 0x78]
push 0
push dword [esp + 0x78]
cmove eax, ebx
push eax
push ebp
mov ebp, esi
mov ecx, dword [ebp + 0x624]
push ecx
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [ebp + 0x624]
mov ecx, dword [ecx + 4]
call fcn.0040ea40
add esp, 0x14
test eax, eax
je 0x424dd8
movzx eax, word [ebx]
test ax, ax
je 0x424ecb
cmp byte [esp + 0x32], 0
je 0x4256df
mov ecx, ebx
nop
cmp ax, 0x20
je 0x425460
cmp ax, 9
jne 0x42568f
movzx eax, word [ecx + 2]
add ecx, 2
jmp 0x425450
or bh, 0xff
mov byte [esp + 0x17], bh
mov ecx, dword [esp + 0x18]
xor edx, edx
push 0
call fcn.0040dda0
add esp, 4
mov esi, eax
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push ecx
push 0
xor edx, edx
mov ecx, esi
call fcn.004155c0
add esp, 0xc
mov byte [esp + 0x45], al
push 0x4e2ab4
push esi
call fcn.004acede
add esp, 8
test eax, eax
mov al, byte [esp + 0x45]
setne bl
lea ecx, [eax - 1]
cmp cl, 5
ja 0x4254c1
cmp al, 3
jne 0x4254c7
add al, 0x66
cmp al, 5
ja 0x4254cb
mov cl, 1
jmp 0x4254cd
xor cl, cl
mov al, bh
sub al, 1
cmp al, 5
ja 0x4254da
cmp bh, 3
jne 0x4254e2
mov al, bh
add al, 0x66
cmp al, 5
ja 0x4254e6
mov al, 1
jmp 0x4254e8
xor al, al
mov byte [esp + 0x33], al
test cl, cl
jne 0x4254f9
mov byte [esp + 0x46], 1
test al, al
jne 0x4254fe
mov byte [esp + 0x46], 0
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x425503
sub ecx, edx
sar ecx, 1
cmp ecx, 1
jne 0x42552a
movzx eax, word [esi]
push eax
call dword [sym.imp.USER32.dll_IsCharUpperW]
test eax, eax
mov eax, 0x4e4cfc
jne 0x42552f
mov eax, 0x4cd2cc
push dword [esp + 0x18]
test bl, bl
mov ecx, 0x4e4980
push eax
mov eax, 0x4cd2cc
cmove eax, ecx
push eax
push 0x4e4d00
lea eax, [esp + 0x108]
push 0x20
push eax
call fcn.00491dd0
push 0x1f
lea eax, [esp + 0xd4]
push edi
push eax
call fcn.004b3100
mov ebx, dword [esp + 0x58]
add esp, 0x24
xor eax, eax
mov word [esp + 0xf6], ax
lea eax, [esp + 0x88]
push 7
push ebx
push eax
call fcn.004b3100
sub edi, ebx
xor eax, eax
sar edi, 1
add esp, 0xc
mov word [esp + 0x96], ax
cmp edi, 8
jae 0x4255a7
mov word [esp + edi*2 + 0x88], ax
mov dl, byte [esp + 0x17]
xor esi, esi
mov dword [esp + 0x20], esi
cmp word [esp + 0x88], si
jne 0x425ab0
cmp dl, 0xd
jne 0x4255f4
lea eax, [esp + 0xb8]
push str.Return
push eax
call fcn.004af78f
add esp, 8
test eax, eax
je 0x42567b
mov edi, dword [esp + 0x18]
xor eax, eax
mov ebp, dword [esp + 0x24]
mov dl, byte [esp + 0x17]
jmp 0x424edd
cmp dl, 0x13
jne 0x425ab0
mov ax, word [esp + 0xb8]
movzx esi, ax
test esi, 0xffffff80
je 0x425614
xor edi, edi
jmp 0x425629
push 2
push esi
call fcn.004b15e4
mov edi, eax
add esp, 8
mov ax, word [esp + 0xb8]
mov edx, esi
mov ecx, esi
and ecx, 0xffdf
test edi, edi
movzx esi, cx
mov ecx, edx
cmove esi, ecx
cmp si, 0x50
je 0x42567b
movzx esi, ax
test esi, 0xffffff80
je 0x425652
xor eax, eax
jmp 0x42565d
push 2
push esi
call fcn.004b15e4
add esp, 8
mov edx, esi
mov ecx, esi
and ecx, 0xffdf
test eax, eax
movzx esi, cx
mov ecx, edx
cmove esi, ecx
cmp si, 0x42
jne 0x425abd
xor al, al
mov byte [esp + 0x17], al
jmp 0x425388
mov ebx, dword [esp + 0x34]
jmp 0x42538c
push 0
push 0
push 0
push 0
push 0
push 0
push ecx
mov ecx, ebp
call fcn.004278c0
test eax, eax
je 0x424dd8
mov eax, dword [ebp + 0x614]
mov al, byte [eax]
cmp al, 9
jb 0x4256bf
cmp al, 0x20
jbe 0x425c4d
cmp al, 0x21
je 0x425c4d
cmp al, 0x69
jb 0x4256d3
cmp al, 0x6b
jbe 0x425c4d
cmp al, 0x71
jb 0x4256df
cmp al, 0x73
jbe 0x425c4d
push 0
push 0
push 0
push 0x67
mov ecx, ebp
call fcn.00429cf0
test eax, eax
je 0x424dd8
mov eax, dword [ebp + 0x614]
mov dword [eax + 0xc], 1
jmp 0x424ecb
xor esi, esi
cmp word [ebx], si
je 0x42581f
push str.AltTab
push ebx
call fcn.004af78f
add esp, 8
test eax, eax
jne 0x425733
mov ebp, dword [esp + 0x24]
mov esi, 0x7ffe
jmp 0x4257f9
push str.ShiftAltTab
push ebx
call fcn.004af78f
add esp, 8
test eax, eax
jne 0x425753
mov ebp, dword [esp + 0x24]
mov esi, 0x7ffd
jmp 0x4257f9
push str.AltTabMenu
push ebx
call fcn.004af78f
add esp, 8
test eax, eax
jne 0x425773
mov ebp, dword [esp + 0x24]
mov esi, 0x7ffc
jmp 0x4257f9
push str.AltTabAndMenu
push ebx
call fcn.004af78f
add esp, 8
test eax, eax
jne 0x425790
mov ebp, dword [esp + 0x24]
mov esi, 0x7ffb
jmp 0x4257f9
push str.AltTabMenuDismiss
push ebx
call fcn.004af78f
mov ebp, dword [esp + 0x2c]
add esp, 8
test eax, eax
jne 0x4257ad
mov esi, 0x7ffa
jmp 0x4257f9
xor esi, esi
mov ecx, ebp
push esi
push esi
push esi
push esi
push esi
push esi
push ebx
call fcn.004278c0
test eax, eax
je 0x424dd8
mov eax, dword [ebp + 0x614]
mov al, byte [eax]
cmp al, 9
jb 0x4257d9
cmp al, 0x20
jbe 0x425c4d
cmp al, 0x21
je 0x425c4d
cmp al, 0x69
jb 0x4257ed
cmp al, 0x6b
jbe 0x425c4d
cmp al, 0x71
jb 0x4257f9
cmp al, 0x73
jbe 0x425c4d
push 0
push 0
push 0
push 0x67
mov ecx, ebp
call fcn.00429cf0
test eax, eax
je 0x424dd8
mov eax, dword [ebp + 0x614]
mov dword [eax + 0xc], 1
jmp 0x425823
mov ebp, dword [esp + 0x24]
lea eax, [esp + 0x47]
mov ecx, edi
push eax
lea edx, [esp + 0x80]
call fcn.0040e3f0
mov edi, eax
add esp, 4
test edi, edi
je 0x4258a6
test si, si
je 0x425851
mov word [edi + 6], si
mov edi, dword [esp + 0x18]
jmp 0x424ecb
mov eax, dword [edi + 0x20]
test eax, eax
je 0x425870
mov ecx, dword [0x4f82bc]
nop
cmp dword [eax + 4], ecx
je 0x425c8a
mov eax, dword [eax + 8]
test eax, eax
jne 0x425860
push dword [esp + 0x7c]
mov ecx, edi
push dword [ebp + 0x624]
call fcn.0040db50
test eax, eax
je 0x425cb1
cmp byte [esp + 0x47], 0
jne 0x425899
cmp byte [0x4f797b], 0
je 0x425848
mov byte [edi + 0x14], 1
mov edi, dword [esp + 0x18]
jmp 0x424ecb
mov ecx, dword [ebp + 0x624]
mov edx, esi
push 0
push dword [esp + 0x80]
push dword [ecx + 4]
call fcn.0040d3e0
add esp, 0xc
test eax, eax
jne 0x425848
cmp dword [esp + 0x80], 3
jne 0x424dd8
mov edi, dword [esp + 0x18]
lea eax, [esp + 0x138]
push edi
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.00491dd0
push 0
push 0
xorps xmm3, xmm3
lea ecx, [esp + 0x150]
mov edx, 0x10000
call fcn.00497b50
add esp, 0x18
jmp 0x424ecb
mov edi, dword [esp + 0x18]
mov bp, word [0x4f5b24]
mov ebx, dword [esp + 0x38]
cmp word [edi + ebx*2 - 2], 0x3a
jne 0x4259f0
cmp ebx, 1
je 0x425cea
movzx eax, word [edi]
mov edx, edi
test ax, ax
je 0x425980
mov si, word [0x4f5b2c]
mov ecx, eax
nop dword [eax + eax]
cmp cx, 0x20
je 0x4259f0
cmp cx, 9
je 0x4259f0
cmp cx, si
je 0x4259f0
cmp cx, bp
je 0x4259f0
movzx eax, word [edx + 2]
add edx, 2
mov ecx, eax
test ax, ax
jne 0x425950
cmp word [edi + ebx*2 - 4], 0x3a
jne 0x42598d
cmp ebx, 2
ja 0x4259f0
xor eax, eax
push str.Default
push edi
mov word [edi + ebx*2 - 2], ax
call fcn.004af78f
mov ebp, dword [esp + 0x2c]
add esp, 8
test eax, eax
jne 0x4259d9
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x4259d9
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4259d9
cmp byte [eax], 0x75
jne 0x4259d9
push 0
push 0
push 0
push 0x76
mov ecx, ebp
call fcn.00429cf0
test eax, eax
je 0x424dd8
jmp 0x424ecb
push 0
push edi
mov ecx, ebp
call fcn.00427780
test eax, eax
je 0x424dd8
jmp 0x424ecb
cmp word [edi], 0x23
mov ebp, dword [esp + 0x24]
jne 0x425a19
mov esi, dword [ebp + 0x250]
mov ecx, ebp
push edi
call fcn.004262b0
test eax, eax
je 0x424dd8
cmp eax, 3
je 0x424ebb
movzx eax, word [edi]
cmp eax, 0x7b
je 0x425a47
cmp eax, 0x7d
je 0x425a47
push 0
push 0
push 0
push 0
push 0
push 0
push edi
mov ecx, ebp
call fcn.004278c0
test eax, eax
je 0x424dd8
jmp 0x424ecb
cmp eax, 0x7b
mov ecx, ebp
push 0
setne al
push 0
add al, 0x77
push 0
movzx eax, al
push eax
call fcn.00429cf0
test eax, eax
je 0x424dd8
add edi, 2
mov dword [esp + 0x18], edi
nop
movzx eax, word [edi]
cmp eax, 0x20
je 0x425a7d
cmp eax, 9
jne 0x425a82
add edi, 2
jmp 0x425a70
mov dword [esp + 0x18], edi
mov dword [esp + 0x48], edi
test ax, ax
je 0x424ecb
mov ebx, edi
lea ecx, [ebx + 2]
nop dword [eax + eax]
mov ax, word [ebx]
add ebx, 2
test ax, ax
jne 0x425aa0
jmp 0x424a7b
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
jmp 0x424ed3
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
jmp 0x424ecb
mov eax, dword [0x4e2608]
mov ecx, ebp
cmp byte [esp + 0x33], 0
mov dword [edi], eax
mov ax, word [0x4e260c]
mov word [edi + 4], ax
lea eax, [esp + 0x48]
push 0
push 1
push eax
setne al
add al, 0xc5
movzx eax, al
push eax
call fcn.00429cf0
lea eax, [esp + 0xb8]
push eax
push str.Blind_s_Up
push edi
call fcn.00405640
add esp, 0xc
lea eax, [esp + 0x48]
mov ecx, ebp
push 0
push 1
push eax
push 0x41
call fcn.00429cf0
push 0
push 0
push 0
push 0x67
mov ecx, ebp
call fcn.00429cf0
xor al, al
mov byte [esp + 0x17], al
mov esi, dword [esp + 0x2c]
lea ecx, [esp + 0xa180]
cmp dword [esp + 0x84], ecx
lea edi, [esp + 0x12188]
mov ebx, dword [esp + 0x3c]
mov eax, ecx
cmovne edi, eax
mov dword [esp + 0x18], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x2c], edi
jmp 0x423f81
push dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
push str.Continuation_section_too_long.
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
cmp dword [ebp + 0x244], 0
lea eax, [esp + 0x2178]
push eax
mov ecx, str.Not_a_valid_method__class_or_property_definition.
mov eax, 0x4e4b88
cmove eax, ecx
mov ecx, ebp
push eax
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
lea eax, [esp + 0x2178]
mov ecx, ebp
push eax
push 0x4e4b88
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
lea eax, [esp + 0x2178]
push eax
push str.Functions_cannot_contain_functions.
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push edi
push str.Not_a_valid_property_getter_setter.
mov ecx, ebp
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push edi
push str.Not_a_valid_method__class_or_property_definition.
mov ecx, ebp
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push edi
push str.IfWin_should_be_IfWin.
mov ecx, edx
mov dword [edx + 0x64c], eax
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push edi
mov eax, 0x3a
mov ecx, ebp
push str.Invalid_single_line_hotkey_hotstring.
mov word [ebx - 4], ax
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push edi
push str.This_hotstring_is_missing_its_abbreviation.
mov ecx, esi
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push dword [esp + 0x18]
mov ecx, ebp
mov dword [ebp + 0x64c], 0
push str.Duplicate_hotkey.
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push dword [esp + 0x18]
mov ecx, ebp
push str.Out_of_memory.
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
mov ecx, dword [esp + 0x24]
push edi
push str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
mov ecx, dword [esp + 0x24]
push edi
push str.This_line_does_not_contain_a_recognized_action.
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
mov ecx, dword [esp + 0x24]
push edi
push str.Continuation_section_too_long.
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
mov ecx, dword [esp + 0x24]
push esi
push 0x4e4b24
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
cmp word [esp + 0x2178], 0
je 0x425db1
cmp dword [esp + 0x50], 0
mov eax, dword [esp + 0x60]
mov esi, dword [ebp + 0x250]
mov dword [ebp + 0x250], eax
lea eax, [esp + 0x2178]
je 0x425d8f
cmp byte [esp + 0x1f], 0
mov ecx, 0x4e4b88
push eax
mov eax, str.Missing___
cmove eax, ecx
mov ecx, ebp
push eax
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
push 0
push 0
push 0
push 0
push 0
push 3
push eax
mov ecx, ebp
call fcn.004278c0
test eax, eax
je 0x424dd8
mov dword [ebp + 0x250], esi
cmp dword [ebp + 0x28], 0
je 0x425ddb
cmp dword [esp + 0x6c], 0
jne 0x425ddb
lea eax, [ebp + 0x40]
mov ecx, ebp
push eax
push str.Missing___
call fcn.0043bff0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4
inc dword [ebp + 0x250]
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1a180
ret 4