"TReader.SkipValue" disassembly 

www.madshi.net

I've chosen "TReader.SkipValue", because it has a little case instruction, which madDisAsm handles quite nicely (in contrast to Delphi's built in disassembler).

00479ba4 public TReader.SkipValue:        ; function entry point
00479ba4   push    ebp
00479ba5   mov     ebp, esp
00479ba7   add     esp, -8
00479baa   xor     edx, edx
00479bac   mov     [ebp-8], edx
00479baf   mov     [ebp-4], eax
00479bb2   xor     eax, eax
00479bb4   push    ebp
00479bb5   push    $479d33                ; @HandleFinally
00479bba   push    dword ptr fs:[eax]
00479bbd   mov     fs:[eax], esp
00479bc0   mov     eax, [ebp-4]
00479bc3   call    -$134 ($479a94)        ; TReader.ReadValue
00479bc3
00479bc8   and     eax, $7f
00479bcb   cmp     eax, $14
00479bce   ja      loc_479d1d
00479bce
00479bd4   jmp     dword ptr [eax*4+$479bdb]
00479bd4
00479bd4 ; ---------------------------------------------------------
00479bd4
00479bdb   dd loc_479d1d                  ; case jump table
00479bdf   dd loc_479c34
00479be3   dd loc_479c40
00479be7   dd loc_479c52
00479beb   dd loc_479c64
00479bef   dd loc_479c76
00479bf3   dd loc_479c88
00479bf7   dd loc_479c88
00479bfb   dd loc_479d1d
00479bff   dd loc_479d1d
00479c03   dd loc_479c98
00479c07   dd loc_479ca6
00479c0b   dd loc_479cb0
00479c0f   dd loc_479d1d
00479c13   dd loc_479cbe
00479c17   dd loc_479cc7
00479c1b   dd loc_479cd6
00479c1f   dd loc_479ce5
00479c23   dd loc_479cf4
00479c27   dd loc_479d02
00479c2b   dd loc_479d11
00479c2f
00479c2f ; ---------------------------------------------------------
00479c2f
00479c34 loc_479c34:
00479c34   push    ebp
00479c35   call    -$14a ($479af0)        ; SkipList
00479c35
00479c3a   pop     ecx
00479c3b   jmp     loc_479d1d
00479c3b
00479c3b ; ---------------------------------------------------------
00479c3b
00479c40 loc_479c40:
00479c40   mov     edx, 1
00479c45   mov     eax, [ebp-4]
00479c48   call    +$34f ($479f9c)        ; TReader.SkipBytes
00479c48
00479c4d   jmp     loc_479d1d
00479c4d
00479c4d ; ---------------------------------------------------------
00479c4d
00479c52 loc_479c52:
00479c52   mov     edx, 2
00479c57   mov     eax, [ebp-4]
00479c5a   call    +$33d ($479f9c)        ; TReader.SkipBytes
00479c5a
00479c5f   jmp     loc_479d1d
00479c5f
00479c5f ; ---------------------------------------------------------
00479c5f
00479c64 loc_479c64:
00479c64   mov     edx, 4
00479c69   mov     eax, [ebp-4]
00479c6c   call    +$32b ($479f9c)        ; TReader.SkipBytes
00479c6c
00479c71   jmp     loc_479d1d
00479c71
00479c71 ; ---------------------------------------------------------
00479c71
00479c76 loc_479c76:
00479c76   mov     edx, $a
00479c7b   mov     eax, [ebp-4]
00479c7e   call    +$319 ($479f9c)        ; TReader.SkipBytes
00479c7e
00479c83   jmp     loc_479d1d
00479c83
00479c83 ; ---------------------------------------------------------
00479c83
00479c88 loc_479c88:
00479c88   lea     edx, [ebp-8]
00479c8b   mov     eax, [ebp-4]
00479c8e   call    -$3db ($4798b8)        ; TReader.ReadStr
00479c8e
00479c93   jmp     loc_479d1d
00479c93
00479c93 ; ---------------------------------------------------------
00479c93
00479c98 loc_479c98:
00479c98   push    ebp
00479c99   mov     eax, 1
00479c9e   call    -$18b ($479b18)        ; SkipBinary
00479c9e
00479ca3   pop     ecx
00479ca4   jmp     loc_479d1d
00479ca4
00479ca4 ; ---------------------------------------------------------
00479ca4
00479ca6 loc_479ca6:
00479ca6   mov     eax, [ebp-4]
00479ca9   call    -$206 ($479aa8)        ; TReader.SkipSetBody
00479ca9
00479cae   jmp     loc_479d1d
00479cae
00479cae ; ---------------------------------------------------------
00479cae
00479cb0 loc_479cb0:
00479cb0   push    ebp
00479cb1   mov     eax, 1
00479cb6   call    -$1a3 ($479b18)        ; SkipBinary
00479cb6
00479cbb   pop     ecx
00479cbc   jmp     loc_479d1d
00479cbc
00479cbc ; ---------------------------------------------------------
00479cbc
00479cbe loc_479cbe:
00479cbe   push    ebp
00479cbf   call    -$17c ($479b48)        ; SkipCollection
00479cbf
00479cc4   pop     ecx
00479cc5   jmp     loc_479d1d
00479cc5
00479cc5 ; ---------------------------------------------------------
00479cc5
00479cc7 loc_479cc7:
00479cc7   mov     edx, 4
00479ccc   mov     eax, [ebp-4]
00479ccf   call    +$2c8 ($479f9c)        ; TReader.SkipBytes
00479ccf
00479cd4   jmp     loc_479d1d
00479cd4
00479cd4 ; ---------------------------------------------------------
00479cd4
00479cd6 loc_479cd6:
00479cd6   mov     edx, 8
00479cdb   mov     eax, [ebp-4]
00479cde   call    +$2b9 ($479f9c)        ; TReader.SkipBytes
00479cde
00479ce3   jmp     loc_479d1d
00479ce3
00479ce3 ; ---------------------------------------------------------
00479ce3
00479ce5 loc_479ce5:
00479ce5   mov     edx, 8
00479cea   mov     eax, [ebp-4]
00479ced   call    +$2aa ($479f9c)        ; TReader.SkipBytes
00479ced
00479cf2   jmp     loc_479d1d
00479cf2
00479cf2 ; ---------------------------------------------------------
00479cf2
00479cf4 loc_479cf4:
00479cf4   push    ebp
00479cf5   mov     eax, 2
00479cfa   call    -$1e7 ($479b18)        ; SkipBinary
00479cfa
00479cff   pop     ecx
00479d00   jmp     loc_479d1d
00479d00
00479d00 ; ---------------------------------------------------------
00479d00
00479d02 loc_479d02:
00479d02   mov     edx, 8
00479d07   mov     eax, [ebp-4]
00479d0a   call    +$28d ($479f9c)        ; TReader.SkipBytes
00479d0a
00479d0f   jmp     loc_479d1d
00479d0f
00479d0f ; ---------------------------------------------------------
00479d0f
00479d11 loc_479d11:
00479d11   push    ebp
00479d12   mov     eax, 1
00479d17   call    -$204 ($479b18)        ; SkipBinary
00479d17
00479d1c   pop     ecx
00479d1d
00479d1d loc_479d1d:
00479d1d   xor     eax, eax
00479d1f   pop     edx
00479d20   pop     ecx
00479d21   pop     ecx
00479d22   mov     fs:[eax], edx
00479d25   push    $479d3a
00479d2a
00479d2a loc_479d2a:
00479d2a   lea     eax, [ebp-8]
00479d2d   call    -$75556 ($4047dc)      ; @LStrClr
00479d2d
00479d32   ret
00479d32
00479d32 ; ---------------------------------------------------------
00479d32
00479d33   jmp     -$75ca0 ($404098)      ; @HandleFinally
00479d33
00479d38   jmp     loc_479d2a
00479d38
00479d38 ; ---------------------------------------------------------
00479d38
00479d3a   pop     ecx
00479d3b   pop     ecx
00479d3c   pop     ebp
00479d3d   ret