415e59:	33 f6                	xor    %esi,%esi
415e5b:	85 c0                	test   %eax,%eax
415e5d:	74 0b                	je     0x415e6a
415e5f:	8b c8                	mov    %eax,%ecx
415e61:	e8 90 6b ff ff       	call   0x40c9f6
415e66:	8b d8                	mov    %eax,%ebx
415e68:	eb 02                	jmp    0x415e6c
415e6a:	8b de                	mov    %esi,%ebx
415e6c:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
415e70:	6a 28                	push   $0x28
415e72:	e8 2c 94 02 00       	call   0x43f2a3
415e77:	59                   	pop    %ecx
415e78:	89 45 ec             	mov    %eax,-0x14(%ebp)
415e7b:	c7 45 fc 06 00 00 00 	movl   $0x6,-0x4(%ebp)
415e82:	85 c0                	test   %eax,%eax
415e84:	74 23                	je     0x415ea9
415e86:	8b 55 f0             	mov    -0x10(%ebp),%edx
415e89:	8b 12                	mov    (%edx),%edx
415e8b:	8b 4a 18             	mov    0x18(%edx),%ecx
415e8e:	51                   	push   %ecx
415e8f:	53                   	push   %ebx
415e90:	ff 75 0c             	push   0xc(%ebp)
415e93:	8d 41 01             	lea    0x1(%ecx),%eax
415e96:	8b 4d ec             	mov    -0x14(%ebp),%ecx
415e99:	ff 75 08             	push   0x8(%ebp)
415e9c:	89 42 18             	mov    %eax,0x18(%edx)
415e9f:	ff 75 10             	push   0x10(%ebp)
415ea2:	e8 11 6c ff ff       	call   0x40cab8
415ea7:	8b f0                	mov    %eax,%esi
415ea9:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
415ead:	8b 4d f0             	mov    -0x10(%ebp),%ecx
415eb0:	53                   	push   %ebx
415eb1:	89 73 14             	mov    %esi,0x14(%ebx)
415eb4:	e8 cd 57 00 00       	call   0x41b686
415eb9:	8b 47 10             	mov    0x10(%edi),%eax
415ebc:	89 70 0c             	mov    %esi,0xc(%eax)
415ebf:	8b 47 10             	mov    0x10(%edi),%eax
415ec2:	89 46 10             	mov    %eax,0x10(%esi)
415ec5:	89 77 10             	mov    %esi,0x10(%edi)
415ec8:	89 7e 0c             	mov    %edi,0xc(%esi)
415ecb:	e8 43 9b 02 00       	call   0x43fa13
415ed0:	c2 0c 00             	ret    $0xc
415ed3:	6a 04                	push   $0x4
415ed5:	b8 d0 f0 48 00       	mov    $0x48f0d0,%eax
415eda:	e8 6b 9b 02 00       	call   0x43fa4a
415edf:	8b f1                	mov    %ecx,%esi
415ee1:	6a 20                	push   $0x20
415ee3:	e8 bb 93 02 00       	call   0x43f2a3
415ee8:	59                   	pop    %ecx
415ee9:	8b c8                	mov    %eax,%ecx
415eeb:	89 4d f0             	mov    %ecx,-0x10(%ebp)
415eee:	33 c0                	xor    %eax,%eax
415ef0:	89 45 fc             	mov    %eax,-0x4(%ebp)
415ef3:	85 c9                	test   %ecx,%ecx
415ef5:	74 06                	je     0x415efd
415ef7:	50                   	push   %eax
415ef8:	e8 a8 4c ff ff       	call   0x40aba5
415efd:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
415f01:	8b ce                	mov    %esi,%ecx
415f03:	50                   	push   %eax
415f04:	e8 48 57 00 00       	call   0x41b651
415f09:	e8 05 9b 02 00       	call   0x43fa13
415f0e:	c3                   	ret
415f0f:	6a 04                	push   $0x4
415f11:	b8 f8 f0 48 00       	mov    $0x48f0f8,%eax
415f16:	e8 2f 9b 02 00       	call   0x43fa4a
415f1b:	8b f1                	mov    %ecx,%esi
415f1d:	6a 20                	push   $0x20
415f1f:	e8 7f 93 02 00       	call   0x43f2a3
415f24:	59                   	pop    %ecx
415f25:	8b c8                	mov    %eax,%ecx
415f27:	89 4d f0             	mov    %ecx,-0x10(%ebp)
415f2a:	33 c0                	xor    %eax,%eax
415f2c:	89 45 fc             	mov    %eax,-0x4(%ebp)
415f2f:	85 c9                	test   %ecx,%ecx
415f31:	74 06                	je     0x415f39
415f33:	50                   	push   %eax
415f34:	e8 b6 4c ff ff       	call   0x40abef
415f39:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
415f3d:	8b ce                	mov    %esi,%ecx
415f3f:	50                   	push   %eax
415f40:	e8 41 57 00 00       	call   0x41b686
415f45:	e8 c9 9a 02 00       	call   0x43fa13
415f4a:	c3                   	ret
415f4b:	55                   	push   %ebp
415f4c:	8b ec                	mov    %esp,%ebp
415f4e:	8b 45 0c             	mov    0xc(%ebp),%eax
415f51:	8b 4d 08             	mov    0x8(%ebp),%ecx
415f54:	83 00 23             	addl   $0x23,(%eax)
415f57:	8b 01                	mov    (%ecx),%eax
415f59:	8b 50 fc             	mov    -0x4(%eax),%edx
415f5c:	2b c2                	sub    %edx,%eax
415f5e:	83 c0 fc             	add    $0xfffffffc,%eax
415f61:	83 f8 1f             	cmp    $0x1f,%eax
415f64:	77 04                	ja     0x415f6a
415f66:	89 11                	mov    %edx,(%ecx)
415f68:	5d                   	pop    %ebp
415f69:	c3                   	ret
415f6a:	e9 77 6d 03 00       	jmp    0x44cce6
415f6f:	56                   	push   %esi
415f70:	8b f1                	mov    %ecx,%esi
415f72:	32 c9                	xor    %cl,%cl
415f74:	8b 46 4c             	mov    0x4c(%esi),%eax
415f77:	83 f8 ff             	cmp    $0xffffffff,%eax
415f7a:	0f 84 47 01 00 00    	je     0x4160c7
415f80:	57                   	push   %edi
415f81:	6a 29                	push   $0x29
415f83:	5f                   	pop    %edi
415f84:	53                   	push   %ebx
415f85:	ba 00 00 00 10       	mov    $0x10000000,%edx
415f8a:	83 f8 7c             	cmp    $0x7c,%eax
415f8d:	0f 84 32 01 00 00    	je     0x4160c5
415f93:	3b c7                	cmp    %edi,%eax
415f95:	75 19                	jne    0x415fb0
415f97:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
415f9b:	8b c7                	mov    %edi,%eax
415f9d:	0f 85 22 01 00 00    	jne    0x4160c5
415fa3:	3b c7                	cmp    %edi,%eax
415fa5:	75 09                	jne    0x415fb0
415fa7:	85 56 50             	test   %edx,0x50(%esi)
415faa:	0f 84 23 01 00 00    	je     0x4160d3
415fb0:	83 f8 2e             	cmp    $0x2e,%eax
415fb3:	75 16                	jne    0x415fcb
415fb5:	6a 05                	push   $0x5
415fb7:	8d 4e 24             	lea    0x24(%esi),%ecx
415fba:	e8 77 63 00 00       	call   0x41c336
415fbf:	8b ce                	mov    %esi,%ecx
415fc1:	e8 0e 64 00 00       	call   0x41c3d4
415fc6:	e9 e5 00 00 00       	jmp    0x4160b0
415fcb:	83 f8 5c             	cmp    $0x5c,%eax
415fce:	75 4d                	jne    0x41601d
415fd0:	8b ce                	mov    %esi,%ecx
415fd2:	e8 fd 63 00 00       	call   0x41c3d4
415fd7:	f6 46 50 80          	testb  $0x80,0x50(%esi)
415fdb:	74 34                	je     0x416011
415fdd:	8a 46 48             	mov    0x48(%esi),%al
415fe0:	3c 62                	cmp    $0x62,%al
415fe2:	75 16                	jne    0x415ffa
415fe4:	6a 04                	push   $0x4
415fe6:	8d 4e 24             	lea    0x24(%esi),%ecx
415fe9:	e8 48 63 00 00       	call   0x41c336
415fee:	8b ce                	mov    %esi,%ecx
415ff0:	e8 df 63 00 00       	call   0x41c3d4
415ff5:	e9 bd 00 00 00       	jmp    0x4160b7
415ffa:	3c 42                	cmp    $0x42,%al
415ffc:	75 13                	jne    0x416011
415ffe:	6a 04                	push   $0x4
416000:	8d 4e 24             	lea    0x24(%esi),%ecx
416003:	e8 2e 63 00 00       	call   0x41c336
416008:	8b 46 28             	mov    0x28(%esi),%eax
41600b:	83 70 08 01          	xorl   $0x1,0x8(%eax)
41600f:	eb dd                	jmp    0x415fee
416011:	8b ce                	mov    %esi,%ecx
416013:	e8 d8 02 00 00       	call   0x4162f0
416018:	e9 93 00 00 00       	jmp    0x4160b0
41601d:	83 f8 5b             	cmp    $0x5b,%eax
416020:	75 1b                	jne    0x41603d
416022:	8b ce                	mov    %esi,%ecx
416024:	e8 ab 63 00 00       	call   0x41c3d4
416029:	8b ce                	mov    %esi,%ecx
41602b:	e8 ea 12 00 00       	call   0x41731a
416030:	83 7e 4c 5d          	cmpl   $0x5d,0x4c(%esi)
416034:	74 89                	je     0x415fbf
416036:	6a 04                	push   $0x4
416038:	e9 98 00 00 00       	jmp    0x4160d5
41603d:	83 f8 28             	cmp    $0x28,%eax
416040:	75 17                	jne    0x416059
416042:	8b ce                	mov    %esi,%ecx
416044:	e8 8b 63 00 00       	call   0x41c3d4
416049:	8b ce                	mov    %esi,%ecx
41604b:	e8 b3 75 00 00       	call   0x41d603
416050:	8a d8                	mov    %al,%bl
416052:	39 7e 4c             	cmp    %edi,0x4c(%esi)
416055:	75 7c                	jne    0x4160d3
416057:	eb 4c                	jmp    0x4160a5
416059:	83 f8 5e             	cmp    $0x5e,%eax
41605c:	75 04                	jne    0x416062
41605e:	6a 02                	push   $0x2
416060:	eb 84                	jmp    0x415fe6
416062:	83 f8 24             	cmp    $0x24,%eax
416065:	75 07                	jne    0x41606e
416067:	6a 03                	push   $0x3
416069:	e9 78 ff ff ff       	jmp    0x415fe6
41606e:	83 f8 2a             	cmp    $0x2a,%eax
416071:	74 5c                	je     0x4160cf
416073:	83 f8 2b             	cmp    $0x2b,%eax
416076:	74 57                	je     0x4160cf
416078:	83 f8 3f             	cmp    $0x3f,%eax
41607b:	74 52                	je     0x4160cf
41607d:	83 f8 7b             	cmp    $0x7b,%eax
416080:	74 4d                	je     0x4160cf
416082:	83 f8 7d             	cmp    $0x7d,%eax
416085:	75 05                	jne    0x41608c
416087:	85 56 50             	test   %edx,0x50(%esi)
41608a:	74 3f                	je     0x4160cb
41608c:	83 f8 5d             	cmp    $0x5d,%eax
41608f:	75 05                	jne    0x416096
416091:	85 56 50             	test   %edx,0x50(%esi)
416094:	74 a0                	je     0x416036
416096:	0f b6 46 48          	movzbl 0x48(%esi),%eax
41609a:	8d 4e 24             	lea    0x24(%esi),%ecx
41609d:	50                   	push   %eax
41609e:	e8 90 f1 ff ff       	call   0x415233
4160a3:	b3 01                	mov    $0x1,%bl
4160a5:	8b ce                	mov    %esi,%ecx
4160a7:	e8 28 63 00 00       	call   0x41c3d4
4160ac:	84 db                	test   %bl,%bl
4160ae:	74 07                	je     0x4160b7
4160b0:	8b ce                	mov    %esi,%ecx
4160b2:	e8 0c 64 00 00       	call   0x41c4c3
4160b7:	8b 46 4c             	mov    0x4c(%esi),%eax
4160ba:	b1 01                	mov    $0x1,%cl
4160bc:	83 f8 ff             	cmp    $0xffffffff,%eax
4160bf:	0f 85 c0 fe ff ff    	jne    0x415f85
4160c5:	5b                   	pop    %ebx
4160c6:	5f                   	pop    %edi
4160c7:	8a c1                	mov    %cl,%al
4160c9:	5e                   	pop    %esi
4160ca:	c3                   	ret
4160cb:	6a 06                	push   $0x6
4160cd:	eb 06                	jmp    0x4160d5
4160cf:	6a 0a                	push   $0xa
4160d1:	eb 02                	jmp    0x4160d5
4160d3:	6a 05                	push   $0x5
4160d5:	8b ce                	mov    %esi,%ecx
4160d7:	e8 60 35 00 00       	call   0x41963c
4160dc:	cc                   	int3
4160dd:	56                   	push   %esi
4160de:	8b f1                	mov    %ecx,%esi
4160e0:	32 c9                	xor    %cl,%cl
4160e2:	8b 46 4c             	mov    0x4c(%esi),%eax
4160e5:	83 f8 ff             	cmp    $0xffffffff,%eax
4160e8:	0f 84 4a 01 00 00    	je     0x416238
4160ee:	57                   	push   %edi
4160ef:	6a 29                	push   $0x29
4160f1:	5f                   	pop    %edi
4160f2:	53                   	push   %ebx
4160f3:	ba 00 00 00 10       	mov    $0x10000000,%edx
4160f8:	83 f8 7c             	cmp    $0x7c,%eax
4160fb:	0f 84 35 01 00 00    	je     0x416236
416101:	3b c7                	cmp    %edi,%eax
416103:	75 19                	jne    0x41611e
416105:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
416109:	8b c7                	mov    %edi,%eax
41610b:	0f 85 25 01 00 00    	jne    0x416236
416111:	3b c7                	cmp    %edi,%eax
416113:	75 09                	jne    0x41611e
416115:	85 56 50             	test   %edx,0x50(%esi)
416118:	0f 84 26 01 00 00    	je     0x416244
41611e:	83 f8 2e             	cmp    $0x2e,%eax
416121:	75 16                	jne    0x416139
416123:	6a 05                	push   $0x5
416125:	8d 4e 24             	lea    0x24(%esi),%ecx
416128:	e8 58 62 00 00       	call   0x41c385
41612d:	8b ce                	mov    %esi,%ecx
41612f:	e8 ce 62 00 00       	call   0x41c402
416134:	e9 e8 00 00 00       	jmp    0x416221
416139:	83 f8 5c             	cmp    $0x5c,%eax
41613c:	75 50                	jne    0x41618e
41613e:	8b ce                	mov    %esi,%ecx
416140:	e8 bd 62 00 00       	call   0x41c402
416145:	f6 46 50 80          	testb  $0x80,0x50(%esi)
416149:	74 37                	je     0x416182
41614b:	0f b7 46 48          	movzwl 0x48(%esi),%eax
41614f:	83 f8 62             	cmp    $0x62,%eax
416152:	75 16                	jne    0x41616a
416154:	6a 04                	push   $0x4
416156:	8d 4e 24             	lea    0x24(%esi),%ecx
416159:	e8 27 62 00 00       	call   0x41c385
41615e:	8b ce                	mov    %esi,%ecx
416160:	e8 9d 62 00 00       	call   0x41c402
416165:	e9 be 00 00 00       	jmp    0x416228
41616a:	83 f8 42             	cmp    $0x42,%eax
41616d:	75 13                	jne    0x416182
41616f:	6a 04                	push   $0x4
416171:	8d 4e 24             	lea    0x24(%esi),%ecx
416174:	e8 0c 62 00 00       	call   0x41c385
416179:	8b 46 28             	mov    0x28(%esi),%eax
41617c:	83 70 08 01          	xorl   $0x1,0x8(%eax)
416180:	eb dc                	jmp    0x41615e
416182:	8b ce                	mov    %esi,%ecx
416184:	e8 0d 02 00 00       	call   0x416396
416189:	e9 93 00 00 00       	jmp    0x416221
41618e:	83 f8 5b             	cmp    $0x5b,%eax
416191:	75 1b                	jne    0x4161ae
416193:	8b ce                	mov    %esi,%ecx
416195:	e8 68 62 00 00       	call   0x41c402
41619a:	8b ce                	mov    %esi,%ecx
41619c:	e8 c2 11 00 00       	call   0x417363
4161a1:	83 7e 4c 5d          	cmpl   $0x5d,0x4c(%esi)
4161a5:	74 86                	je     0x41612d
4161a7:	6a 04                	push   $0x4
4161a9:	e9 98 00 00 00       	jmp    0x416246
4161ae:	83 f8 28             	cmp    $0x28,%eax
4161b1:	75 17                	jne    0x4161ca
4161b3:	8b ce                	mov    %esi,%ecx
4161b5:	e8 48 62 00 00       	call   0x41c402
4161ba:	8b ce                	mov    %esi,%ecx
4161bc:	e8 c1 74 00 00       	call   0x41d682
4161c1:	8a d8                	mov    %al,%bl
4161c3:	39 7e 4c             	cmp    %edi,0x4c(%esi)
4161c6:	75 7c                	jne    0x416244
4161c8:	eb 4c                	jmp    0x416216
4161ca:	83 f8 5e             	cmp    $0x5e,%eax
4161cd:	75 04                	jne    0x4161d3
4161cf:	6a 02                	push   $0x2
4161d1:	eb 83                	jmp    0x416156
4161d3:	83 f8 24             	cmp    $0x24,%eax
4161d6:	75 07                	jne    0x4161df
4161d8:	6a 03                	push   $0x3
4161da:	e9 77 ff ff ff       	jmp    0x416156
4161df:	83 f8 2a             	cmp    $0x2a,%eax
4161e2:	74 5c                	je     0x416240
4161e4:	83 f8 2b             	cmp    $0x2b,%eax
4161e7:	74 57                	je     0x416240
4161e9:	83 f8 3f             	cmp    $0x3f,%eax
4161ec:	74 52                	je     0x416240
4161ee:	83 f8 7b             	cmp    $0x7b,%eax
4161f1:	74 4d                	je     0x416240
4161f3:	83 f8 7d             	cmp    $0x7d,%eax
4161f6:	75 05                	jne    0x4161fd
4161f8:	85 56 50             	test   %edx,0x50(%esi)
4161fb:	74 3f                	je     0x41623c
4161fd:	83 f8 5d             	cmp    $0x5d,%eax
416200:	75 05                	jne    0x416207
416202:	85 56 50             	test   %edx,0x50(%esi)
416205:	74 a0                	je     0x4161a7
416207:	0f b7 46 48          	movzwl 0x48(%esi),%eax
41620b:	8d 4e 24             	lea    0x24(%esi),%ecx
41620e:	50                   	push   %eax
41620f:	e8 7e f0 ff ff       	call   0x415292
416214:	b3 01                	mov    $0x1,%bl
416216:	8b ce                	mov    %esi,%ecx
416218:	e8 e5 61 00 00       	call   0x41c402
41621d:	84 db                	test   %bl,%bl
41621f:	74 07                	je     0x416228
416221:	8b ce                	mov    %esi,%ecx
416223:	e8 66 63 00 00       	call   0x41c58e
416228:	8b 46 4c             	mov    0x4c(%esi),%eax
41622b:	b1 01                	mov    $0x1,%cl
41622d:	83 f8 ff             	cmp    $0xffffffff,%eax
416230:	0f 85 bd fe ff ff    	jne    0x4160f3
416236:	5b                   	pop    %ebx
416237:	5f                   	pop    %edi
416238:	8a c1                	mov    %cl,%al
41623a:	5e                   	pop    %esi
41623b:	c3                   	ret
41623c:	6a 06                	push   $0x6
41623e:	eb 06                	jmp    0x416246
416240:	6a 0a                	push   $0xa