472db5:	e8 3a df fa ff       	call   0x420cf4
472dba:	59                   	pop    %ecx
472dbb:	59                   	pop    %ecx
472dbc:	8d 44 24 40          	lea    0x40(%esp),%eax
472dc0:	50                   	push   %eax
472dc1:	8d 4c 24 34          	lea    0x34(%esp),%ecx
472dc5:	e8 4f a0 f9 ff       	call   0x40ce19
472dca:	8d 44 24 30          	lea    0x30(%esp),%eax
472dce:	50                   	push   %eax
472dcf:	8b cf                	mov    %edi,%ecx
472dd1:	e8 f9 36 f9 ff       	call   0x4064cf
472dd6:	8d 4c 24 30          	lea    0x30(%esp),%ecx
472dda:	e8 58 9d f9 ff       	call   0x40cb37
472ddf:	33 c0                	xor    %eax,%eax
472de1:	56                   	push   %esi
472de2:	8d 4c 24 24          	lea    0x24(%esp),%ecx
472de6:	66 89 44 24 44       	mov    %ax,0x44(%esp)
472deb:	e8 b6 33 f9 ff       	call   0x4061a6
472df0:	66 39 18             	cmp    %bx,(%eax)
472df3:	0f 84 4a 1d f9 ff    	je     0x404b43
472df9:	46                   	inc    %esi
472dfa:	e9 3f ff ff ff       	jmp    0x472d3e
472dff:	ff 76 04             	push   0x4(%esi)
472e02:	e8 57 c7 fa ff       	call   0x41f55e
472e07:	59                   	pop    %ecx
472e08:	e9 1e 20 f9 ff       	jmp    0x404e2b
472e0d:	8b 03                	mov    (%ebx),%eax
472e0f:	89 07                	mov    %eax,(%edi)
472e11:	8b 43 04             	mov    0x4(%ebx),%eax
472e14:	89 47 04             	mov    %eax,0x4(%edi)
472e17:	e9 6c 20 f9 ff       	jmp    0x404e88
472e1c:	e8 f0 20 f9 ff       	call   0x404f11
472e21:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
472e25:	74 07                	je     0x472e2e
472e27:	56                   	push   %esi
472e28:	e8 31 c7 fa ff       	call   0x41f55e
472e2d:	59                   	pop    %ecx
472e2e:	8b c6                	mov    %esi,%eax
472e30:	e9 c2 21 f9 ff       	jmp    0x404ff7
472e35:	8b 47 1c             	mov    0x1c(%edi),%eax
472e38:	6a 00                	push   $0x0
472e3a:	ff 34 b0             	push   (%eax,%esi,4)
472e3d:	8d 4d ec             	lea    -0x14(%ebp),%ecx
472e40:	e8 19 a5 fa ff       	call   0x41d35e
472e45:	85 c0                	test   %eax,%eax
472e47:	74 0b                	je     0x472e54
472e49:	46                   	inc    %esi
472e4a:	3b 77 20             	cmp    0x20(%edi),%esi
472e4d:	72 e6                	jb     0x472e35
472e4f:	e9 74 1b f9 ff       	jmp    0x4049c8
472e54:	8b 47 2c             	mov    0x2c(%edi),%eax
472e57:	8b 04 b0             	mov    (%eax,%esi,4),%eax
472e5a:	ff 00                	incl   (%eax)
472e5c:	e9 8a 1b f9 ff       	jmp    0x4049eb
472e61:	33 db                	xor    %ebx,%ebx
472e63:	43                   	inc    %ebx
472e64:	88 1f                	mov    %bl,(%edi)
472e66:	e9 e4 9d f9 ff       	jmp    0x40cc4f
472e6b:	33 db                	xor    %ebx,%ebx
472e6d:	43                   	inc    %ebx
472e6e:	88 5f 01             	mov    %bl,0x1(%edi)
472e71:	e9 d9 9d f9 ff       	jmp    0x40cc4f
472e76:	8d 4e 2c             	lea    0x2c(%esi),%ecx
472e79:	e8 76 98 fa ff       	call   0x41c6f4
472e7e:	8b d8                	mov    %eax,%ebx
472e80:	53                   	push   %ebx
472e81:	e8 d2 93 fa ff       	call   0x41c258
472e86:	53                   	push   %ebx
472e87:	e8 ce 9c f9 ff       	call   0x40cb5a
472e8c:	53                   	push   %ebx
472e8d:	e8 49 de fa ff       	call   0x420cdb
472e92:	59                   	pop    %ecx
472e93:	0f b7 4c 43 fe       	movzwl -0x2(%ebx,%eax,2),%ecx
472e98:	6a 22                	push   $0x22
472e9a:	5a                   	pop    %edx
472e9b:	66 3b ca             	cmp    %dx,%cx
472e9e:	74 35                	je     0x472ed5
472ea0:	6a 27                	push   $0x27
472ea2:	5a                   	pop    %edx
472ea3:	66 3b ca             	cmp    %dx,%cx
472ea6:	74 2d                	je     0x472ed5
472ea8:	0f b7 03             	movzwl (%ebx),%eax
472eab:	6a 22                	push   $0x22
472ead:	59                   	pop    %ecx
472eae:	66 3b c1             	cmp    %cx,%ax
472eb1:	74 10                	je     0x472ec3
472eb3:	66 3b c2             	cmp    %dx,%ax
472eb6:	74 0b                	je     0x472ec3
472eb8:	8b 4f 04             	mov    0x4(%edi),%ecx
472ebb:	53                   	push   %ebx
472ebc:	8b 01                	mov    (%ecx),%eax
472ebe:	ff 50 08             	call   *0x8(%eax)
472ec1:	eb 2a                	jmp    0x472eed
472ec3:	53                   	push   %ebx
472ec4:	e8 95 c6 fa ff       	call   0x41f55e
472ec9:	59                   	pop    %ecx
472eca:	56                   	push   %esi
472ecb:	68 00 35 4b 00       	push   $0x4b3500
472ed0:	e9 e4 00 00 00       	jmp    0x472fb9
472ed5:	66 39 0b             	cmp    %cx,(%ebx)
472ed8:	75 e9                	jne    0x472ec3
472eda:	33 c9                	xor    %ecx,%ecx
472edc:	66 89 4c 43 fe       	mov    %cx,-0x2(%ebx,%eax,2)
472ee1:	8b 4f 04             	mov    0x4(%edi),%ecx
472ee4:	8d 43 02             	lea    0x2(%ebx),%eax
472ee7:	8b 11                	mov    (%ecx),%edx
472ee9:	50                   	push   %eax
472eea:	ff 52 08             	call   *0x8(%edx)
472eed:	53                   	push   %ebx
472eee:	e8 6b c6 fa ff       	call   0x41f55e
472ef3:	59                   	pop    %ecx
472ef4:	e9 b0 9e f9 ff       	jmp    0x40cda9
472ef9:	33 f6                	xor    %esi,%esi
472efb:	39 77 20             	cmp    %esi,0x20(%edi)
472efe:	0f 86 a5 9e f9 ff    	jbe    0x40cda9
472f04:	8b 47 1c             	mov    0x1c(%edi),%eax
472f07:	8b 4d 0c             	mov    0xc(%ebp),%ecx
472f0a:	6a 00                	push   $0x0
472f0c:	ff 34 b0             	push   (%eax,%esi,4)
472f0f:	e8 4a a4 fa ff       	call   0x41d35e
472f14:	85 c0                	test   %eax,%eax
472f16:	74 0b                	je     0x472f23
472f18:	46                   	inc    %esi
472f19:	3b 77 20             	cmp    0x20(%edi),%esi
472f1c:	72 e6                	jb     0x472f04
472f1e:	e9 86 9e f9 ff       	jmp    0x40cda9
472f23:	8b 47 2c             	mov    0x2c(%edi),%eax
472f26:	33 db                	xor    %ebx,%ebx
472f28:	8b 04 b0             	mov    (%eax,%esi,4),%eax
472f2b:	43                   	inc    %ebx
472f2c:	39 18                	cmp    %ebx,(%eax)
472f2e:	0f 8e 1b 9d f9 ff    	jle    0x40cc4f
472f34:	6a 04                	push   $0x4
472f36:	e9 13 9d f9 ff       	jmp    0x40cc4e
472f3b:	ff 75 f8             	push   -0x8(%ebp)
472f3e:	8d 46 10             	lea    0x10(%esi),%eax
472f41:	50                   	push   %eax
472f42:	8b cf                	mov    %edi,%ecx
472f44:	e8 c4 f9 fc ff       	call   0x44290d
472f49:	3c 01                	cmp    $0x1,%al
472f4b:	75 53                	jne    0x472fa0
472f4d:	ff 75 f8             	push   -0x8(%ebp)
472f50:	8d 4d d8             	lea    -0x28(%ebp),%ecx
472f53:	e8 c1 9e f9 ff       	call   0x40ce19
472f58:	ff 75 f8             	push   -0x8(%ebp)
472f5b:	8d 4d e8             	lea    -0x18(%ebp),%ecx
472f5e:	e8 b6 9e f9 ff       	call   0x40ce19
472f63:	8b 45 10             	mov    0x10(%ebp),%eax
472f66:	ff 30                	push   (%eax)
472f68:	8d 45 d8             	lea    -0x28(%ebp),%eax
472f6b:	56                   	push   %esi
472f6c:	ff 75 0c             	push   0xc(%ebp)
472f6f:	51                   	push   %ecx
472f70:	50                   	push   %eax
472f71:	8b cf                	mov    %edi,%ecx
472f73:	e8 28 1a f9 ff       	call   0x4049a0
472f78:	59                   	pop    %ecx
472f79:	50                   	push   %eax
472f7a:	8d 45 e8             	lea    -0x18(%ebp),%eax
472f7d:	50                   	push   %eax
472f7e:	8b cf                	mov    %edi,%ecx
472f80:	e8 ae 98 f9 ff       	call   0x40c833
472f85:	8d 4d e8             	lea    -0x18(%ebp),%ecx
472f88:	8a d8                	mov    %al,%bl
472f8a:	e8 a8 9b f9 ff       	call   0x40cb37
472f8f:	8d 4d d8             	lea    -0x28(%ebp),%ecx
472f92:	e8 a0 9b f9 ff       	call   0x40cb37
472f97:	84 db                	test   %bl,%bl
472f99:	74 2d                	je     0x472fc8
472f9b:	e9 09 9e f9 ff       	jmp    0x40cda9
472fa0:	56                   	push   %esi
472fa1:	68 60 35 4b 00       	push   $0x4b3560
472fa6:	eb 11                	jmp    0x472fb9
472fa8:	8b 45 08             	mov    0x8(%ebp),%eax
472fab:	85 c0                	test   %eax,%eax
472fad:	0f 8e 9c 9c f9 ff    	jle    0x40cc4f
472fb3:	56                   	push   %esi
472fb4:	68 8c 35 4b 00       	push   $0x4b358c
472fb9:	8b 45 10             	mov    0x10(%ebp),%eax
472fbc:	8b cf                	mov    %edi,%ecx
472fbe:	ff 30                	push   (%eax)
472fc0:	ff 75 0c             	push   0xc(%ebp)
472fc3:	e8 ed f5 fc ff       	call   0x4425b5
472fc8:	33 db                	xor    %ebx,%ebx
472fca:	e9 80 9c f9 ff       	jmp    0x40cc4f
472fcf:	8b 45 08             	mov    0x8(%ebp),%eax
472fd2:	8d 4d 08             	lea    0x8(%ebp),%ecx
472fd5:	51                   	push   %ecx
472fd6:	8d 4d 0c             	lea    0xc(%ebp),%ecx
472fd9:	51                   	push   %ecx
472fda:	ff 30                	push   (%eax)
472fdc:	8d 4d e8             	lea    -0x18(%ebp),%ecx
472fdf:	e8 b2 93 fd ff       	call   0x44c396
472fe4:	85 c0                	test   %eax,%eax
472fe6:	74 0d                	je     0x472ff5
472fe8:	8d 4d e8             	lea    -0x18(%ebp),%ecx
472feb:	e8 62 12 f9 ff       	call   0x404252
472ff0:	e9 11 0a f9 ff       	jmp    0x403a06
472ff5:	ff 75 0c             	push   0xc(%ebp)
472ff8:	e8 a0 ec fa ff       	call   0x421c9d
472ffd:	59                   	pop    %ecx
472ffe:	8d 4d e8             	lea    -0x18(%ebp),%ecx
473001:	e8 4c 12 f9 ff       	call   0x404252
473006:	e9 fd 09 f9 ff       	jmp    0x403a08
47300b:	e8 20 1f f9 ff       	call   0x404f30
473010:	a1 54 21 4c 00       	mov    0x4c2154,%eax
473015:	8b 4d fc             	mov    -0x4(%ebp),%ecx
473018:	8b 04 07             	mov    (%edi,%eax,1),%eax
47301b:	8b f1                	mov    %ecx,%esi
47301d:	8b 00                	mov    (%eax),%eax
47301f:	3b 48 08             	cmp    0x8(%eax),%ecx
473022:	0f 83 4d 1d f9 ff    	jae    0x404d75
473028:	8b 40 04             	mov    0x4(%eax),%eax
47302b:	8d 4d e8             	lea    -0x18(%ebp),%ecx
47302e:	ff 34 b0             	push   (%eax,%esi,4)
473031:	e8 bb 6a fd ff       	call   0x449af1
473036:	8d 45 e8             	lea    -0x18(%ebp),%eax
473039:	50                   	push   %eax
47303a:	8d 4d d8             	lea    -0x28(%ebp),%ecx
47303d:	e8 43 8a f9 ff       	call   0x40ba85
473042:	66 83 7d f0 7f       	cmpw   $0x7f,-0x10(%ebp)
473047:	74 1d                	je     0x473066
473049:	8d 4d e8             	lea    -0x18(%ebp),%ecx
47304c:	e8 a4 a8 fa ff       	call   0x41d8f5
473051:	a1 54 21 4c 00       	mov    0x4c2154,%eax
473056:	46                   	inc    %esi
473057:	8b 04 07             	mov    (%edi,%eax,1),%eax
47305a:	8b 00                	mov    (%eax),%eax
47305c:	3b 70 08             	cmp    0x8(%eax),%esi
47305f:	72 c7                	jb     0x473028
473061:	e9 0f 1d f9 ff       	jmp    0x404d75
473066:	8d 46 01             	lea    0x1(%esi),%eax
473069:	89 45 fc             	mov    %eax,-0x4(%ebp)
47306c:	a1 54 21 4c 00       	mov    0x4c2154,%eax
473071:	8b 04 07             	mov    (%edi,%eax,1),%eax
473074:	8b 00                	mov    (%eax),%eax
473076:	8b 40 08             	mov    0x8(%eax),%eax
473079:	48                   	dec    %eax
47307a:	3b f0                	cmp    %eax,%esi
47307c:	75 0a                	jne    0x473088
47307e:	83 c7 04             	add    $0x4,%edi
473081:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
473088:	8d 4d e8             	lea    -0x18(%ebp),%ecx
47308b:	e8 65 a8 fa ff       	call   0x41d8f5
473090:	e9 e0 1c f9 ff       	jmp    0x404d75
473095:	ff 75 14             	push   0x14(%ebp)
473098:	68 20 34 4b 00       	push   $0x4b3420
47309d:	ff 75 18             	push   0x18(%ebp)
4730a0:	ff 75 10             	push   0x10(%ebp)
4730a3:	e8 0d f5 fc ff       	call   0x4425b5
4730a8:	32 db                	xor    %bl,%bl
4730aa:	e9 46 9a f9 ff       	jmp    0x40caf5
4730af:	ff 75 14             	push   0x14(%ebp)
4730b2:	8b ce                	mov    %esi,%ecx
4730b4:	68 a8 34 4b 00       	push   $0x4b34a8
4730b9:	ff 75 18             	push   0x18(%ebp)
4730bc:	ff 75 10             	push   0x10(%ebp)
4730bf:	e8 f1 f4 fc ff       	call   0x4425b5
4730c4:	e9 20 9a f9 ff       	jmp    0x40cae9
4730c9:	81 7c 24 64 45 41 30 	cmpl   $0x36304145,0x64(%esp)
4730d0:	36
4730d1:	0f 85 43 98 f9 ff    	jne    0x40c91a
4730d7:	8d 8c 24 98 00 00 00 	lea    0x98(%esp),%ecx
4730de:	e8 24 18 f9 ff       	call   0x404907
4730e3:	8b 45 08             	mov    0x8(%ebp),%eax
4730e6:	6a 02                	push   $0x2
4730e8:	ff 30                	push   (%eax)
4730ea:	8d 4c 24 58          	lea    0x58(%esp),%ecx
4730ee:	89 9c 24 cc 00 00 00 	mov    %ebx,0xcc(%esp)
4730f5:	89 9c 24 d0 00 00 00 	mov    %ebx,0xd0(%esp)
4730fc:	89 5c 24 64          	mov    %ebx,0x64(%esp)
473100:	89 5c 24 68          	mov    %ebx,0x68(%esp)
473104:	88 5c 24 6c          	mov    %bl,0x6c(%esp)
473108:	e8 9c 10 f9 ff       	call   0x4041a9
47310d:	85 c0                	test   %eax,%eax
47310f:	75 25                	jne    0x473136
473111:	8d 44 24 34          	lea    0x34(%esp),%eax
473115:	50                   	push   %eax
473116:	8d 44 24 18          	lea    0x18(%esp),%eax
47311a:	50                   	push   %eax
47311b:	68 d8 34 4b 00       	push   $0x4b34d8
473120:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
473124:	e8 6d 92 fd ff       	call   0x44c396
473129:	8d 4c 24 50          	lea    0x50(%esp),%ecx
47312d:	85 c0                	test   %eax,%eax
47312f:	74 21                	je     0x473152
473131:	e8 1c 11 f9 ff       	call   0x404252
473136:	ff 75 14             	push   0x14(%ebp)
473139:	8b 4c 24 20          	mov    0x20(%esp),%ecx
47313d:	68 a8 34 4b 00       	push   $0x4b34a8
473142:	ff 75 18             	push   0x18(%ebp)
473145:	ff 75 10             	push   0x10(%ebp)
473148:	e8 68 f4 fc ff       	call   0x4425b5
47314d:	e9 7f 99 f9 ff       	jmp    0x40cad1
473152:	e8 fb 10 f9 ff       	call   0x404252
473157:	8b 44 24 14          	mov    0x14(%esp),%eax
47315b:	6a 04                	push   $0x4
47315d:	8b 38                	mov    (%eax),%edi
47315f:	5a                   	pop    %edx
473160:	83 c8 ff             	or     $0xffffffff,%eax
473163:	6a 10                	push   $0x10
473165:	89 54 24 1c          	mov    %edx,0x1c(%esp)
473169:	89 7c 24 38          	mov    %edi,0x38(%esp)
47316d:	66 89 44 24 34       	mov    %ax,0x34(%esp)
473172:	c7 44 24 7c b4 dd 49 	movl   $0x49ddb4,0x7c(%esp)
473179:	00
47317a:	89 9c 24 80 00 00 00 	mov    %ebx,0x80(%esp)
473181:	89 9c 24 84 00 00 00 	mov    %ebx,0x84(%esp)
473188:	89 9c 24 88 00 00 00 	mov    %ebx,0x88(%esp)
47318f:	e8 56 c3 fa ff       	call   0x41f4ea
473194:	8b f0                	mov    %eax,%esi
473196:	59                   	pop    %ecx
473197:	89 74 24 3c          	mov    %esi,0x3c(%esp)
47319b:	85 f6                	test   %esi,%esi
47319d:	74 11                	je     0x4731b0
47319f:	c7 06 b4 dd 49 00    	movl   $0x49ddb4,(%esi)
4731a5:	89 5e 04             	mov    %ebx,0x4(%esi)
4731a8:	89 5e 08             	mov    %ebx,0x8(%esi)
4731ab:	89 5e 0c             	mov    %ebx,0xc(%esi)
4731ae:	eb 06                	jmp    0x4731b6
4731b0:	8b f3                	mov    %ebx,%esi
4731b2:	89 74 24 3c          	mov    %esi,0x3c(%esp)
4731b6:	83 c8 ff             	or     $0xffffffff,%eax
4731b9:	6a 05                	push   $0x5
4731bb:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4731bf:	89 74 24 48          	mov    %esi,0x48(%esp)
4731c3:	66 89 44 24 36       	mov    %ax,0x36(%esp)
4731c8:	e8 2f 8a f9 ff       	call   0x40bbfc
4731cd:	8d 44 24 28          	lea    0x28(%esp),%eax
4731d1:	50                   	push   %eax
4731d2:	8b ce                	mov    %esi,%ecx
4731d4:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
4731d8:	e8 a8 88 f9 ff       	call   0x40ba85
4731dd:	33 c0                	xor    %eax,%eax
4731df:	40                   	inc    %eax
4731e0:	3b f8                	cmp    %eax,%edi
4731e2:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
4731e6:	89 5c 24 4c          	mov    %ebx,0x4c(%esp)
4731ea:	89 44 24 40          	mov    %eax,0x40(%esp)
4731ee:	0f 8c da 01 00 00    	jl     0x4733ce
4731f4:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4731f8:	8b 44 24 14          	mov    0x14(%esp),%eax
4731fc:	03 c1                	add    %ecx,%eax
4731fe:	41                   	inc    %ecx
4731ff:	0f b6 00             	movzbl (%eax),%eax
473202:	89 4c 24 18          	mov    %ecx,0x18(%esp)
473206:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
47320a:	50                   	push   %eax
47320b:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47320f:	89 44 24 28          	mov    %eax,0x28(%esp)