416fca:	5d                   	pop    %ebp
416fcb:	c2 0c 00             	ret    $0xc
416fce:	55                   	push   %ebp
416fcf:	8b ec                	mov    %esp,%ebp
416fd1:	56                   	push   %esi
416fd2:	8b f1                	mov    %ecx,%esi
416fd4:	83 3e 00             	cmpl   $0x0,(%esi)
416fd7:	74 12                	je     0x416feb
416fd9:	8b 46 08             	mov    0x8(%esi),%eax
416fdc:	2b 06                	sub    (%esi),%eax
416fde:	83 e0 f8             	and    $0xfffffff8,%eax
416fe1:	50                   	push   %eax
416fe2:	ff 36                	push   (%esi)
416fe4:	e8 41 c5 fe ff       	call   0x40352a
416fe9:	59                   	pop    %ecx
416fea:	59                   	pop    %ecx
416feb:	8b 4d 08             	mov    0x8(%ebp),%ecx
416fee:	8b 45 0c             	mov    0xc(%ebp),%eax
416ff1:	89 0e                	mov    %ecx,(%esi)
416ff3:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
416ff6:	89 46 04             	mov    %eax,0x4(%esi)
416ff9:	8b 45 10             	mov    0x10(%ebp),%eax
416ffc:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
416fff:	89 46 08             	mov    %eax,0x8(%esi)
417002:	5e                   	pop    %esi
417003:	5d                   	pop    %ebp
417004:	c2 0c 00             	ret    $0xc
417007:	55                   	push   %ebp
417008:	8b ec                	mov    %esp,%ebp
41700a:	56                   	push   %esi
41700b:	8b f1                	mov    %ecx,%esi
41700d:	83 3e 00             	cmpl   $0x0,(%esi)
417010:	74 12                	je     0x417024
417012:	8b 46 08             	mov    0x8(%esi),%eax
417015:	2b 06                	sub    (%esi),%eax
417017:	83 e0 f8             	and    $0xfffffff8,%eax
41701a:	50                   	push   %eax
41701b:	ff 36                	push   (%esi)
41701d:	e8 08 c5 fe ff       	call   0x40352a
417022:	59                   	pop    %ecx
417023:	59                   	pop    %ecx
417024:	8b 4d 08             	mov    0x8(%ebp),%ecx
417027:	8b 45 0c             	mov    0xc(%ebp),%eax
41702a:	89 0e                	mov    %ecx,(%esi)
41702c:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
41702f:	89 46 04             	mov    %eax,0x4(%esi)
417032:	8b 45 10             	mov    0x10(%ebp),%eax
417035:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
417038:	89 46 08             	mov    %eax,0x8(%esi)
41703b:	5e                   	pop    %esi
41703c:	5d                   	pop    %ebp
41703d:	c2 0c 00             	ret    $0xc
417040:	55                   	push   %ebp
417041:	8b ec                	mov    %esp,%ebp
417043:	56                   	push   %esi
417044:	8b f1                	mov    %ecx,%esi
417046:	83 3e 00             	cmpl   $0x0,(%esi)
417049:	74 12                	je     0x41705d
41704b:	8b 46 08             	mov    0x8(%esi),%eax
41704e:	2b 06                	sub    (%esi),%eax
417050:	83 e0 f8             	and    $0xfffffff8,%eax
417053:	50                   	push   %eax
417054:	ff 36                	push   (%esi)
417056:	e8 cf c4 fe ff       	call   0x40352a
41705b:	59                   	pop    %ecx
41705c:	59                   	pop    %ecx
41705d:	8b 4d 08             	mov    0x8(%ebp),%ecx
417060:	8b 45 0c             	mov    0xc(%ebp),%eax
417063:	89 0e                	mov    %ecx,(%esi)
417065:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
417068:	89 46 04             	mov    %eax,0x4(%esi)
41706b:	8b 45 10             	mov    0x10(%ebp),%eax
41706e:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
417071:	89 46 08             	mov    %eax,0x8(%esi)
417074:	5e                   	pop    %esi
417075:	5d                   	pop    %ebp
417076:	c2 0c 00             	ret    $0xc
417079:	55                   	push   %ebp
41707a:	8b ec                	mov    %esp,%ebp
41707c:	56                   	push   %esi
41707d:	8b f1                	mov    %ecx,%esi
41707f:	83 3e 00             	cmpl   $0x0,(%esi)
417082:	74 12                	je     0x417096
417084:	8b 46 08             	mov    0x8(%esi),%eax
417087:	2b 06                	sub    (%esi),%eax
417089:	83 e0 f8             	and    $0xfffffff8,%eax
41708c:	50                   	push   %eax
41708d:	ff 36                	push   (%esi)
41708f:	e8 96 c4 fe ff       	call   0x40352a
417094:	59                   	pop    %ecx
417095:	59                   	pop    %ecx
417096:	8b 4d 08             	mov    0x8(%ebp),%ecx
417099:	8b 45 0c             	mov    0xc(%ebp),%eax
41709c:	89 0e                	mov    %ecx,(%esi)
41709e:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
4170a1:	89 46 04             	mov    %eax,0x4(%esi)
4170a4:	8b 45 10             	mov    0x10(%ebp),%eax
4170a7:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
4170aa:	89 46 08             	mov    %eax,0x8(%esi)
4170ad:	5e                   	pop    %esi
4170ae:	5d                   	pop    %ebp
4170af:	c2 0c 00             	ret    $0xc
4170b2:	55                   	push   %ebp
4170b3:	8b ec                	mov    %esp,%ebp
4170b5:	51                   	push   %ecx
4170b6:	56                   	push   %esi
4170b7:	57                   	push   %edi
4170b8:	8b f9                	mov    %ecx,%edi
4170ba:	89 7d fc             	mov    %edi,-0x4(%ebp)
4170bd:	8b 37                	mov    (%edi),%esi
4170bf:	85 f6                	test   %esi,%esi
4170c1:	74 35                	je     0x4170f8
4170c3:	53                   	push   %ebx
4170c4:	8b 5f 04             	mov    0x4(%edi),%ebx
4170c7:	3b f3                	cmp    %ebx,%esi
4170c9:	74 15                	je     0x4170e0
4170cb:	6a 18                	push   $0x18
4170cd:	5f                   	pop    %edi
4170ce:	8b ce                	mov    %esi,%ecx
4170d0:	e8 25 62 00 00       	call   0x41d2fa
4170d5:	03 f7                	add    %edi,%esi
4170d7:	3b f3                	cmp    %ebx,%esi
4170d9:	75 f3                	jne    0x4170ce
4170db:	8b 7d fc             	mov    -0x4(%ebp),%edi
4170de:	8b 37                	mov    (%edi),%esi
4170e0:	8b 47 08             	mov    0x8(%edi),%eax
4170e3:	2b c6                	sub    %esi,%eax
4170e5:	6a 18                	push   $0x18
4170e7:	59                   	pop    %ecx
4170e8:	99                   	cltd
4170e9:	f7 f9                	idiv   %ecx
4170eb:	6b c0 18             	imul   $0x18,%eax,%eax
4170ee:	50                   	push   %eax
4170ef:	56                   	push   %esi
4170f0:	e8 35 c4 fe ff       	call   0x40352a
4170f5:	59                   	pop    %ecx
4170f6:	59                   	pop    %ecx
4170f7:	5b                   	pop    %ebx
4170f8:	6b 45 0c 18          	imul   $0x18,0xc(%ebp),%eax
4170fc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4170ff:	89 0f                	mov    %ecx,(%edi)
417101:	03 c1                	add    %ecx,%eax
417103:	89 47 04             	mov    %eax,0x4(%edi)
417106:	6b 45 10 18          	imul   $0x18,0x10(%ebp),%eax
41710a:	03 c1                	add    %ecx,%eax
41710c:	89 47 08             	mov    %eax,0x8(%edi)
41710f:	5f                   	pop    %edi
417110:	5e                   	pop    %esi
417111:	c9                   	leave
417112:	c2 0c 00             	ret    $0xc
417115:	55                   	push   %ebp
417116:	8b ec                	mov    %esp,%ebp
417118:	56                   	push   %esi
417119:	8b f1                	mov    %ecx,%esi
41711b:	83 3e 00             	cmpl   $0x0,(%esi)
41711e:	74 18                	je     0x417138
417120:	8b 46 08             	mov    0x8(%esi),%eax
417123:	2b 06                	sub    (%esi),%eax
417125:	6a 0c                	push   $0xc
417127:	59                   	pop    %ecx
417128:	99                   	cltd
417129:	f7 f9                	idiv   %ecx
41712b:	6b c0 0c             	imul   $0xc,%eax,%eax
41712e:	50                   	push   %eax
41712f:	ff 36                	push   (%esi)
417131:	e8 f4 c3 fe ff       	call   0x40352a
417136:	59                   	pop    %ecx
417137:	59                   	pop    %ecx
417138:	6b 45 0c 0c          	imul   $0xc,0xc(%ebp),%eax
41713c:	8b 4d 08             	mov    0x8(%ebp),%ecx
41713f:	89 0e                	mov    %ecx,(%esi)
417141:	03 c1                	add    %ecx,%eax
417143:	89 46 04             	mov    %eax,0x4(%esi)
417146:	6b 45 10 0c          	imul   $0xc,0x10(%ebp),%eax
41714a:	03 c1                	add    %ecx,%eax
41714c:	89 46 08             	mov    %eax,0x8(%esi)
41714f:	5e                   	pop    %esi
417150:	5d                   	pop    %ebp
417151:	c2 0c 00             	ret    $0xc
417154:	55                   	push   %ebp
417155:	8b ec                	mov    %esp,%ebp
417157:	56                   	push   %esi
417158:	8b f1                	mov    %ecx,%esi
41715a:	83 3e 00             	cmpl   $0x0,(%esi)
41715d:	74 18                	je     0x417177
41715f:	8b 46 08             	mov    0x8(%esi),%eax
417162:	2b 06                	sub    (%esi),%eax
417164:	6a 0c                	push   $0xc
417166:	59                   	pop    %ecx
417167:	99                   	cltd
417168:	f7 f9                	idiv   %ecx
41716a:	6b c0 0c             	imul   $0xc,%eax,%eax
41716d:	50                   	push   %eax
41716e:	ff 36                	push   (%esi)
417170:	e8 b5 c3 fe ff       	call   0x40352a
417175:	59                   	pop    %ecx
417176:	59                   	pop    %ecx
417177:	6b 45 0c 0c          	imul   $0xc,0xc(%ebp),%eax
41717b:	8b 4d 08             	mov    0x8(%ebp),%ecx
41717e:	89 0e                	mov    %ecx,(%esi)
417180:	03 c1                	add    %ecx,%eax
417182:	89 46 04             	mov    %eax,0x4(%esi)
417185:	6b 45 10 0c          	imul   $0xc,0x10(%ebp),%eax
417189:	03 c1                	add    %ecx,%eax
41718b:	89 46 08             	mov    %eax,0x8(%esi)
41718e:	5e                   	pop    %esi
41718f:	5d                   	pop    %ebp
417190:	c2 0c 00             	ret    $0xc
417193:	55                   	push   %ebp
417194:	8b ec                	mov    %esp,%ebp
417196:	56                   	push   %esi
417197:	8b f1                	mov    %ecx,%esi
417199:	83 3e 00             	cmpl   $0x0,(%esi)
41719c:	74 18                	je     0x4171b6
41719e:	8b 46 08             	mov    0x8(%esi),%eax
4171a1:	2b 06                	sub    (%esi),%eax
4171a3:	6a 0c                	push   $0xc
4171a5:	59                   	pop    %ecx
4171a6:	99                   	cltd
4171a7:	f7 f9                	idiv   %ecx
4171a9:	6b c0 0c             	imul   $0xc,%eax,%eax
4171ac:	50                   	push   %eax
4171ad:	ff 36                	push   (%esi)
4171af:	e8 76 c3 fe ff       	call   0x40352a
4171b4:	59                   	pop    %ecx
4171b5:	59                   	pop    %ecx
4171b6:	6b 45 0c 0c          	imul   $0xc,0xc(%ebp),%eax
4171ba:	8b 4d 08             	mov    0x8(%ebp),%ecx
4171bd:	89 0e                	mov    %ecx,(%esi)
4171bf:	03 c1                	add    %ecx,%eax
4171c1:	89 46 04             	mov    %eax,0x4(%esi)
4171c4:	6b 45 10 0c          	imul   $0xc,0x10(%ebp),%eax
4171c8:	03 c1                	add    %ecx,%eax
4171ca:	89 46 08             	mov    %eax,0x8(%esi)
4171cd:	5e                   	pop    %esi
4171ce:	5d                   	pop    %ebp
4171cf:	c2 0c 00             	ret    $0xc
4171d2:	55                   	push   %ebp
4171d3:	8b ec                	mov    %esp,%ebp
4171d5:	56                   	push   %esi
4171d6:	57                   	push   %edi
4171d7:	8b f9                	mov    %ecx,%edi
4171d9:	8b 37                	mov    (%edi),%esi
4171db:	85 f6                	test   %esi,%esi
4171dd:	74 2a                	je     0x417209
4171df:	53                   	push   %ebx
4171e0:	8b 5f 04             	mov    0x4(%edi),%ebx
4171e3:	3b f3                	cmp    %ebx,%esi
4171e5:	74 10                	je     0x4171f7
4171e7:	8b ce                	mov    %esi,%ecx
4171e9:	e8 82 0b 00 00       	call   0x417d70
4171ee:	83 c6 08             	add    $0x8,%esi
4171f1:	3b f3                	cmp    %ebx,%esi
4171f3:	75 f2                	jne    0x4171e7
4171f5:	8b 37                	mov    (%edi),%esi
4171f7:	8b 47 08             	mov    0x8(%edi),%eax
4171fa:	2b c6                	sub    %esi,%eax
4171fc:	83 e0 f8             	and    $0xfffffff8,%eax
4171ff:	50                   	push   %eax
417200:	56                   	push   %esi
417201:	e8 24 c3 fe ff       	call   0x40352a
417206:	59                   	pop    %ecx
417207:	59                   	pop    %ecx
417208:	5b                   	pop    %ebx
417209:	8b 4d 08             	mov    0x8(%ebp),%ecx
41720c:	8b 45 0c             	mov    0xc(%ebp),%eax
41720f:	89 0f                	mov    %ecx,(%edi)
417211:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
417214:	89 47 04             	mov    %eax,0x4(%edi)
417217:	8b 45 10             	mov    0x10(%ebp),%eax
41721a:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
41721d:	89 47 08             	mov    %eax,0x8(%edi)
417220:	5f                   	pop    %edi
417221:	5e                   	pop    %esi
417222:	5d                   	pop    %ebp
417223:	c2 0c 00             	ret    $0xc
417226:	6a 00                	push   $0x0
417228:	b8 85 f2 48 00       	mov    $0x48f285,%eax
41722d:	e8 18 88 02 00       	call   0x43fa4a
417232:	8b 7d 14             	mov    0x14(%ebp),%edi
417235:	8b 5d 10             	mov    0x10(%ebp),%ebx
417238:	8b 37                	mov    (%edi),%esi
41723a:	85 f6                	test   %esi,%esi
41723c:	74 1b                	je     0x417259
41723e:	8b c6                	mov    %esi,%eax
417240:	8b f0                	mov    %eax,%esi
417242:	3b 18                	cmp    (%eax),%ebx
417244:	73 0b                	jae    0x417251
417246:	8d 78 10             	lea    0x10(%eax),%edi
417249:	8b 37                	mov    (%edi),%esi
41724b:	8b c6                	mov    %esi,%eax
41724d:	85 f6                	test   %esi,%esi
41724f:	75 ef                	jne    0x417240
417251:	85 f6                	test   %esi,%esi
417253:	74 04                	je     0x417259
417255:	3b 1e                	cmp    (%esi),%ebx
417257:	74 31                	je     0x41728a
417259:	6a 14                	push   $0x14
41725b:	e8 43 80 02 00       	call   0x43f2a3
417260:	59                   	pop    %ecx
417261:	89 45 14             	mov    %eax,0x14(%ebp)
417264:	33 c9                	xor    %ecx,%ecx
417266:	89 4d fc             	mov    %ecx,-0x4(%ebp)
417269:	85 c0                	test   %eax,%eax
41726b:	74 10                	je     0x41727d
41726d:	89 18                	mov    %ebx,(%eax)
41726f:	89 48 04             	mov    %ecx,0x4(%eax)
417272:	89 48 08             	mov    %ecx,0x8(%eax)
417275:	89 48 0c             	mov    %ecx,0xc(%eax)
417278:	88 4d fc             	mov    %cl,-0x4(%ebp)
41727b:	eb 02                	jmp    0x41727f
41727d:	8b c1                	mov    %ecx,%eax
41727f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
417283:	89 07                	mov    %eax,(%edi)
417285:	89 70 10             	mov    %esi,0x10(%eax)
417288:	8b 37                	mov    (%edi),%esi
41728a:	ff 75 0c             	push   0xc(%ebp)
41728d:	8d 4e 04             	lea    0x4(%esi),%ecx
417290:	ff 75 08             	push   0x8(%ebp)
417293:	e8 ca cd fe ff       	call   0x404062
417298:	e8 76 87 02 00       	call   0x43fa13
41729d:	c2 10 00             	ret    $0x10
4172a0:	6a 00                	push   $0x0
4172a2:	b8 b8 f2 48 00       	mov    $0x48f2b8,%eax
4172a7:	e8 9e 87 02 00       	call   0x43fa4a
4172ac:	8b 7d 14             	mov    0x14(%ebp),%edi
4172af:	8b 5d 10             	mov    0x10(%ebp),%ebx
4172b2:	8b 37                	mov    (%edi),%esi
4172b4:	85 f6                	test   %esi,%esi
4172b6:	74 1b                	je     0x4172d3
4172b8:	8b c6                	mov    %esi,%eax
4172ba:	8b f0                	mov    %eax,%esi
4172bc:	3b 18                	cmp    (%eax),%ebx
4172be:	73 0b                	jae    0x4172cb
4172c0:	8d 78 10             	lea    0x10(%eax),%edi
4172c3:	8b 37                	mov    (%edi),%esi
4172c5:	8b c6                	mov    %esi,%eax
4172c7:	85 f6                	test   %esi,%esi
4172c9:	75 ef                	jne    0x4172ba
4172cb:	85 f6                	test   %esi,%esi
4172cd:	74 04                	je     0x4172d3
4172cf:	3b 1e                	cmp    (%esi),%ebx
4172d1:	74 31                	je     0x417304
4172d3:	6a 14                	push   $0x14
4172d5:	e8 c9 7f 02 00       	call   0x43f2a3
4172da:	59                   	pop    %ecx
4172db:	89 45 14             	mov    %eax,0x14(%ebp)
4172de:	33 c9                	xor    %ecx,%ecx
4172e0:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4172e3:	85 c0                	test   %eax,%eax