望高手指点,请问下面代码是什么意思?
0069FC50 /$ 8B4424 04 mov eax,dword ptr ss:[esp+4]
0069FC54 |. 8BD0 mov edx,eax
0069FC56 |. 8038 00 cmp byte ptr ds:[eax],0
0069FC59 |. 0F84 97000000 je icm.0069FCF6
0069FC5F |. 8B4424 08 mov eax,dword ptr ss:[esp+8]
0069FC63 |> 0FBE0A /movsx ecx,byte ptr ds:[edx]
0069FC66 |. 83C1 BE |add ecx,-42 ; Switch (cases 42..58)
0069FC69 |. 83F9 16 |cmp ecx,16
0069FC6C |. 77 7C |ja short icm.0069FCEA
0069FC6E |. FF248D F8FC6900 |jmp dword ptr ds:[ecx*4+69FCF8]
0069FC75 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 42 ('B') of switch 0069FC66
0069FC77 |. 80CD 02 |or ch,2
0069FC7A |. EB 6C |jmp short icm.0069FCE8
0069FC7C |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 43 ('C') of switch 0069FC66
0069FC7E |. 80CD 10 |or ch,10
0069FC81 |. EB 65 |jmp short icm.0069FCE8
0069FC83 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 44 ('D') of switch 0069FC66
0069FC85 |. 83C9 40 |or ecx,40
0069FC88 |. EB 5E |jmp short icm.0069FCE8
0069FC8A |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 45 ('E') of switch 0069FC66
0069FC8C |. 83C9 02 |or ecx,2
0069FC8F |. EB 57 |jmp short icm.0069FCE8
0069FC91 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 46 ('F') of switch 0069FC66
0069FC93 |. 81C9 00000200 |or ecx,20000
0069FC99 |. EB 4D |jmp short icm.0069FCE8
0069FC9B |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 47 ('G') of switch 0069FC66
0069FC9D |. 83C9 04 |or ecx,4
0069FCA0 |. EB 46 |jmp short icm.0069FCE8
0069FCA2 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 48 ('H') of switch 0069FC66
0069FCA4 |. 80CD 04 |or ch,4
0069FCA7 |. EB 3F |jmp short icm.0069FCE8
0069FCA9 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 4C ('L') of switch 0069FC66
0069FCAB |. 81C9 00000400 |or ecx,40000
0069FCB1 |. EB 35 |jmp short icm.0069FCE8
0069FCB3 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 50 ('P') of switch 0069FC66
0069FCB5 |. 80C9 80 |or cl,80
0069FCB8 |. EB 2E |jmp short icm.0069FCE8
0069FCBA |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 51 ('Q') of switch 0069FC66
0069FCBC |. 81C9 00000800 |or ecx,80000
0069FCC2 |. EB 24 |jmp short icm.0069FCE8
0069FCC4 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 52 ('R') of switch 0069FC66
0069FCC6 |. 83C9 08 |or ecx,8
0069FCC9 |. EB 1D |jmp short icm.0069FCE8
0069FCCB |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 54 ('T') of switch 0069FC66
0069FCCD |. 81C9 00000100 |or ecx,10000
0069FCD3 |. EB 13 |jmp short icm.0069FCE8
0069FCD5 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 58 ('X') of switch 0069FC66
0069FCD7 |. 83C9 10 |or ecx,10
0069FCDA |. EB 0C |jmp short icm.0069FCE8
0069FCDC |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 55 ('U') of switch 0069FC66
0069FCDE |. 83C9 20 |or ecx,20
0069FCE1 |. EB 05 |jmp short icm.0069FCE8
0069FCE3 |> 8B08 |mov ecx,dword ptr ds:[eax] ; Case 56 ('V') of switch 0069FC66
0069FCE5 |. 80CD 08 |or ch,8
0069FCE8 |> 8908 |mov dword ptr ds:[eax],ecx
0069FCEA |> 8A4A 01 |mov cl,byte ptr ds:[edx+1] ; Default case of switch 0069FC66
0069FCED |. 42 |inc edx
0069FCEE |. 84C9 |test cl,cl
0069FCF0 |.^ 0F85 6DFFFFFF \jnz icm.0069FC63
0069FCF6 \> C3 retn
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课