453fda:	5f                   	pop    %edi
453fdb:	5e                   	pop    %esi
453fdc:	8b e5                	mov    %ebp,%esp
453fde:	5d                   	pop    %ebp
453fdf:	c3                   	ret
453fe0:	8b ff                	mov    %edi,%edi
453fe2:	55                   	push   %ebp
453fe3:	8b ec                	mov    %esp,%ebp
453fe5:	ff 75 08             	push   0x8(%ebp)
453fe8:	e8 4c e3 01 00       	call   0x472339
453fed:	59                   	pop    %ecx
453fee:	5d                   	pop    %ebp
453fef:	c2 04 00             	ret    $0x4
453ff2:	8b ff                	mov    %edi,%edi
453ff4:	55                   	push   %ebp
453ff5:	8b ec                	mov    %esp,%ebp
453ff7:	8b 45 08             	mov    0x8(%ebp),%eax
453ffa:	89 01                	mov    %eax,(%ecx)
453ffc:	8b c1                	mov    %ecx,%eax
453ffe:	5d                   	pop    %ebp
453fff:	c2 04 00             	ret    $0x4
454002:	8b ff                	mov    %edi,%edi
454004:	55                   	push   %ebp
454005:	8b ec                	mov    %esp,%ebp
454007:	8b 45 08             	mov    0x8(%ebp),%eax
45400a:	89 01                	mov    %eax,(%ecx)
45400c:	8b c1                	mov    %ecx,%eax
45400e:	5d                   	pop    %ebp
45400f:	c2 04 00             	ret    $0x4
454012:	8b ff                	mov    %edi,%edi
454014:	56                   	push   %esi
454015:	8b f1                	mov    %ecx,%esi
454017:	ff 36                	push   (%esi)
454019:	e8 1b e3 01 00       	call   0x472339
45401e:	83 26 00             	andl   $0x0,(%esi)
454021:	59                   	pop    %ecx
454022:	5e                   	pop    %esi
454023:	c3                   	ret
454024:	8b 01                	mov    (%ecx),%eax
454026:	c3                   	ret
454027:	8b 01                	mov    (%ecx),%eax
454029:	83 21 00             	andl   $0x0,(%ecx)
45402c:	c3                   	ret
45402d:	8b ff                	mov    %edi,%edi
45402f:	56                   	push   %esi
454030:	8b f1                	mov    %ecx,%esi
454032:	ff 36                	push   (%esi)
454034:	e8 00 e3 01 00       	call   0x472339
454039:	83 26 00             	andl   $0x0,(%esi)
45403c:	59                   	pop    %ecx
45403d:	5e                   	pop    %esi
45403e:	c3                   	ret
45403f:	a1 00 b4 4b 00       	mov    0x4bb400,%eax
454044:	56                   	push   %esi
454045:	6a 03                	push   $0x3
454047:	5e                   	pop    %esi
454048:	85 c0                	test   %eax,%eax
45404a:	75 07                	jne    0x454053
45404c:	b8 00 02 00 00       	mov    $0x200,%eax
454051:	eb 06                	jmp    0x454059
454053:	3b c6                	cmp    %esi,%eax
454055:	7d 07                	jge    0x45405e
454057:	8b c6                	mov    %esi,%eax
454059:	a3 00 b4 4b 00       	mov    %eax,0x4bb400
45405e:	6a 04                	push   $0x4
454060:	50                   	push   %eax
454061:	e8 ed e1 01 00       	call   0x472253
454066:	6a 00                	push   $0x0
454068:	a3 04 b4 4b 00       	mov    %eax,0x4bb404
45406d:	e8 c7 e2 01 00       	call   0x472339
454072:	83 c4 0c             	add    $0xc,%esp
454075:	83 3d 04 b4 4b 00 00 	cmpl   $0x0,0x4bb404
45407c:	75 2b                	jne    0x4540a9
45407e:	6a 04                	push   $0x4
454080:	56                   	push   %esi
454081:	89 35 00 b4 4b 00    	mov    %esi,0x4bb400
454087:	e8 c7 e1 01 00       	call   0x472253
45408c:	6a 00                	push   $0x0
45408e:	a3 04 b4 4b 00       	mov    %eax,0x4bb404
454093:	e8 a1 e2 01 00       	call   0x472339
454098:	83 c4 0c             	add    $0xc,%esp
45409b:	83 3d 04 b4 4b 00 00 	cmpl   $0x0,0x4bb404
4540a2:	75 05                	jne    0x4540a9
4540a4:	83 c8 ff             	or     $0xffffffff,%eax
4540a7:	5e                   	pop    %esi
4540a8:	c3                   	ret
4540a9:	57                   	push   %edi
4540aa:	33 ff                	xor    %edi,%edi
4540ac:	be f0 80 4b 00       	mov    $0x4b80f0,%esi
4540b1:	6a 00                	push   $0x0
4540b3:	68 a0 0f 00 00       	push   $0xfa0
4540b8:	8d 46 20             	lea    0x20(%esi),%eax
4540bb:	50                   	push   %eax
4540bc:	e8 43 12 02 00       	call   0x475304
4540c1:	a1 04 b4 4b 00       	mov    0x4bb404,%eax
4540c6:	8b d7                	mov    %edi,%edx
4540c8:	c1 fa 06             	sar    $0x6,%edx
4540cb:	89 34 b8             	mov    %esi,(%eax,%edi,4)
4540ce:	8b c7                	mov    %edi,%eax
4540d0:	83 e0 3f             	and    $0x3f,%eax
4540d3:	6b c8 30             	imul   $0x30,%eax,%ecx
4540d6:	8b 04 95 00 c0 4b 00 	mov    0x4bc000(,%edx,4),%eax
4540dd:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
4540e1:	83 f8 ff             	cmp    $0xffffffff,%eax
4540e4:	74 09                	je     0x4540ef
4540e6:	83 f8 fe             	cmp    $0xfffffffe,%eax
4540e9:	74 04                	je     0x4540ef
4540eb:	85 c0                	test   %eax,%eax
4540ed:	75 07                	jne    0x4540f6
4540ef:	c7 46 10 fe ff ff ff 	movl   $0xfffffffe,0x10(%esi)
4540f6:	83 c6 38             	add    $0x38,%esi
4540f9:	47                   	inc    %edi
4540fa:	81 fe 98 81 4b 00    	cmp    $0x4b8198,%esi
454100:	75 af                	jne    0x4540b1
454102:	5f                   	pop    %edi
454103:	33 c0                	xor    %eax,%eax
454105:	5e                   	pop    %esi
454106:	c3                   	ret
454107:	8b ff                	mov    %edi,%edi
454109:	55                   	push   %ebp
45410a:	8b ec                	mov    %esp,%ebp
45410c:	6b 45 08 38          	imul   $0x38,0x8(%ebp),%eax
454110:	05 f0 80 4b 00       	add    $0x4b80f0,%eax
454115:	5d                   	pop    %ebp
454116:	c3                   	ret
454117:	8b ff                	mov    %edi,%edi
454119:	56                   	push   %esi
45411a:	e8 77 1d 02 00       	call   0x475e96
45411f:	e8 c6 17 02 00       	call   0x4758ea
454124:	33 f6                	xor    %esi,%esi
454126:	a1 04 b4 4b 00       	mov    0x4bb404,%eax
45412b:	ff 34 06             	push   (%esi,%eax,1)
45412e:	e8 af 1d 02 00       	call   0x475ee2
454133:	a1 04 b4 4b 00       	mov    0x4bb404,%eax
454138:	59                   	pop    %ecx
454139:	8b 04 06             	mov    (%esi,%eax,1),%eax
45413c:	83 c0 20             	add    $0x20,%eax
45413f:	50                   	push   %eax
454140:	ff 15 98 41 49 00    	call   *0x494198
454146:	83 c6 04             	add    $0x4,%esi
454149:	83 fe 0c             	cmp    $0xc,%esi
45414c:	75 d8                	jne    0x454126
45414e:	ff 35 04 b4 4b 00    	push   0x4bb404
454154:	e8 e0 e1 01 00       	call   0x472339
454159:	83 25 04 b4 4b 00 00 	andl   $0x0,0x4bb404
454160:	59                   	pop    %ecx
454161:	5e                   	pop    %esi
454162:	c3                   	ret
454163:	8b ff                	mov    %edi,%edi
454165:	55                   	push   %ebp
454166:	8b ec                	mov    %esp,%ebp
454168:	8b 4d 08             	mov    0x8(%ebp),%ecx
45416b:	85 c9                	test   %ecx,%ecx
45416d:	75 15                	jne    0x454184
45416f:	e8 bb 8c ff ff       	call   0x44ce2f
454174:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
45417a:	e8 57 8b ff ff       	call   0x44ccd6
45417f:	6a 16                	push   $0x16
454181:	58                   	pop    %eax
454182:	5d                   	pop    %ebp
454183:	c3                   	ret
454184:	8b 55 0c             	mov    0xc(%ebp),%edx
454187:	85 d2                	test   %edx,%edx
454189:	74 05                	je     0x454190
45418b:	8d 41 04             	lea    0x4(%ecx),%eax
45418e:	89 02                	mov    %eax,(%edx)
454190:	8b 45 10             	mov    0x10(%ebp),%eax
454193:	85 c0                	test   %eax,%eax
454195:	74 02                	je     0x454199
454197:	89 08                	mov    %ecx,(%eax)
454199:	8b 55 14             	mov    0x14(%ebp),%edx
45419c:	85 d2                	test   %edx,%edx
45419e:	74 05                	je     0x4541a5
4541a0:	8d 41 08             	lea    0x8(%ecx),%eax
4541a3:	89 02                	mov    %eax,(%edx)
4541a5:	33 c0                	xor    %eax,%eax
4541a7:	5d                   	pop    %ebp
4541a8:	c3                   	ret
4541a9:	8b ff                	mov    %edi,%edi
4541ab:	55                   	push   %ebp
4541ac:	8b ec                	mov    %esp,%ebp
4541ae:	8b 45 08             	mov    0x8(%ebp),%eax
4541b1:	83 c0 20             	add    $0x20,%eax
4541b4:	50                   	push   %eax
4541b5:	ff 15 ac 41 49 00    	call   *0x4941ac
4541bb:	5d                   	pop    %ebp
4541bc:	c3                   	ret
4541bd:	8b ff                	mov    %edi,%edi
4541bf:	55                   	push   %ebp
4541c0:	8b ec                	mov    %esp,%ebp
4541c2:	8b 45 08             	mov    0x8(%ebp),%eax
4541c5:	83 c0 20             	add    $0x20,%eax
4541c8:	50                   	push   %eax
4541c9:	ff 15 a8 41 49 00    	call   *0x4941a8
4541cf:	5d                   	pop    %ebp
4541d0:	c3                   	ret
4541d1:	6a 10                	push   $0x10
4541d3:	68 18 49 4b 00       	push   $0x4b4918
4541d8:	e8 83 c7 fe ff       	call   0x440960
4541dd:	33 c0                	xor    %eax,%eax
4541df:	8b 75 08             	mov    0x8(%ebp),%esi
4541e2:	85 f6                	test   %esi,%esi
4541e4:	0f 95 c0             	setne  %al
4541e7:	85 c0                	test   %eax,%eax
4541e9:	75 15                	jne    0x454200
4541eb:	e8 3f 8c ff ff       	call   0x44ce2f
4541f0:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4541f6:	e8 db 8a ff ff       	call   0x44ccd6
4541fb:	83 c8 ff             	or     $0xffffffff,%eax
4541fe:	eb 55                	jmp    0x454255
454200:	33 c0                	xor    %eax,%eax
454202:	8b 5d 0c             	mov    0xc(%ebp),%ebx
454205:	85 db                	test   %ebx,%ebx
454207:	0f 95 c0             	setne  %al
45420a:	85 c0                	test   %eax,%eax
45420c:	74 dd                	je     0x4541eb
45420e:	83 cf ff             	or     $0xffffffff,%edi
454211:	89 7d e4             	mov    %edi,-0x1c(%ebp)
454214:	53                   	push   %ebx
454215:	e8 8f ff ff ff       	call   0x4541a9
45421a:	59                   	pop    %ecx
45421b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
45421f:	89 75 e0             	mov    %esi,-0x20(%ebp)
454222:	0f b7 06             	movzwl (%esi),%eax
454225:	66 85 c0             	test   %ax,%ax
454228:	74 18                	je     0x454242
45422a:	53                   	push   %ebx
45422b:	50                   	push   %eax
45422c:	e8 2f 1f 02 00       	call   0x476160
454231:	59                   	pop    %ecx
454232:	59                   	pop    %ecx
454233:	b9 ff ff 00 00       	mov    $0xffff,%ecx
454238:	66 3b c1             	cmp    %cx,%ax
45423b:	74 0a                	je     0x454247
45423d:	83 c6 02             	add    $0x2,%esi
454240:	eb dd                	jmp    0x45421f
454242:	33 ff                	xor    %edi,%edi
454244:	89 7d e4             	mov    %edi,-0x1c(%ebp)
454247:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
45424e:	e8 0e 00 00 00       	call   0x454261
454253:	8b c7                	mov    %edi,%eax
454255:	e8 4c c7 fe ff       	call   0x4409a6
45425a:	c3                   	ret
45425b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
45425e:	8b 7d e4             	mov    -0x1c(%ebp),%edi
454261:	53                   	push   %ebx
454262:	e8 56 ff ff ff       	call   0x4541bd
454267:	59                   	pop    %ecx
454268:	c3                   	ret
454269:	8b ff                	mov    %edi,%edi
45426b:	55                   	push   %ebp
45426c:	8b ec                	mov    %esp,%ebp
45426e:	56                   	push   %esi
45426f:	8b 75 08             	mov    0x8(%ebp),%esi
454272:	85 f6                	test   %esi,%esi
454274:	75 13                	jne    0x454289
454276:	e8 b4 8b ff ff       	call   0x44ce2f
45427b:	6a 16                	push   $0x16
45427d:	5e                   	pop    %esi
45427e:	89 30                	mov    %esi,(%eax)
454280:	e8 51 8a ff ff       	call   0x44ccd6
454285:	8b c6                	mov    %esi,%eax
454287:	eb 24                	jmp    0x4542ad
454289:	68 80 00 00 00       	push   $0x80
45428e:	ff 75 10             	push   0x10(%ebp)
454291:	ff 75 0c             	push   0xc(%ebp)
454294:	e8 5e 00 00 00       	call   0x4542f7
454299:	83 c4 0c             	add    $0xc,%esp
45429c:	89 06                	mov    %eax,(%esi)
45429e:	85 c0                	test   %eax,%eax
4542a0:	75 09                	jne    0x4542ab
4542a2:	e8 88 8b ff ff       	call   0x44ce2f
4542a7:	8b 00                	mov    (%eax),%eax
4542a9:	eb 02                	jmp    0x4542ad
4542ab:	33 c0                	xor    %eax,%eax
4542ad:	5e                   	pop    %esi
4542ae:	5d                   	pop    %ebp
4542af:	c3                   	ret
4542b0:	8b ff                	mov    %edi,%edi
4542b2:	55                   	push   %ebp
4542b3:	8b ec                	mov    %esp,%ebp
4542b5:	56                   	push   %esi
4542b6:	8b 75 08             	mov    0x8(%ebp),%esi
4542b9:	85 f6                	test   %esi,%esi
4542bb:	75 13                	jne    0x4542d0
4542bd:	e8 6d 8b ff ff       	call   0x44ce2f
4542c2:	6a 16                	push   $0x16
4542c4:	5e                   	pop    %esi
4542c5:	89 30                	mov    %esi,(%eax)
4542c7:	e8 0a 8a ff ff       	call   0x44ccd6
4542cc:	8b c6                	mov    %esi,%eax
4542ce:	eb 24                	jmp    0x4542f4
4542d0:	68 80 00 00 00       	push   $0x80
4542d5:	ff 75 10             	push   0x10(%ebp)
4542d8:	ff 75 0c             	push   0xc(%ebp)
4542db:	e8 d8 00 00 00       	call   0x4543b8
4542e0:	83 c4 0c             	add    $0xc,%esp
4542e3:	89 06                	mov    %eax,(%esi)
4542e5:	85 c0                	test   %eax,%eax
4542e7:	75 09                	jne    0x4542f2
4542e9:	e8 41 8b ff ff       	call   0x44ce2f
4542ee:	8b 00                	mov    (%eax),%eax
4542f0:	eb 02                	jmp    0x4542f4
4542f2:	33 c0                	xor    %eax,%eax
4542f4:	5e                   	pop    %esi
4542f5:	5d                   	pop    %ebp
4542f6:	c3                   	ret
4542f7:	6a 10                	push   $0x10
4542f9:	68 38 49 4b 00       	push   $0x4b4938
4542fe:	e8 5d c6 fe ff       	call   0x440960
454303:	33 c0                	xor    %eax,%eax
454305:	8b 75 08             	mov    0x8(%ebp),%esi
454308:	85 f6                	test   %esi,%esi
45430a:	0f 95 c0             	setne  %al
45430d:	85 c0                	test   %eax,%eax
45430f:	75 14                	jne    0x454325
454311:	e8 19 8b ff ff       	call   0x44ce2f
454316:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
45431c:	e8 b5 89 ff ff       	call   0x44ccd6
454321:	33 c0                	xor    %eax,%eax
454323:	eb 73                	jmp    0x454398
454325:	33 c0                	xor    %eax,%eax
454327:	8b 7d 0c             	mov    0xc(%ebp),%edi
45432a:	85 ff                	test   %edi,%edi
45432c:	0f 95 c0             	setne  %al
45432f:	85 c0                	test   %eax,%eax
454331:	74 de                	je     0x454311
454333:	33 c0                	xor    %eax,%eax
454335:	38 07                	cmp    %al,(%edi)
454337:	0f 95 c0             	setne  %al
45433a:	85 c0                	test   %eax,%eax
45433c:	74 d3                	je     0x454311
45433e:	80 3e 00             	cmpb   $0x0,(%esi)
454341:	75 0d                	jne    0x454350
454343:	e8 e7 8a ff ff       	call   0x44ce2f
454348:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
45434e:	eb d1                	jmp    0x454321
454350:	8d 45 e4             	lea    -0x1c(%ebp),%eax
454353:	50                   	push   %eax
454354:	e8 21 20 02 00       	call   0x47637a
454359:	59                   	pop    %ecx
45435a:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
45435e:	75 0d                	jne    0x45436d
454360:	e8 ca 8a ff ff       	call   0x44ce2f
454365:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
45436b:	eb b4                	jmp    0x454321
45436d:	83 65 e0 00          	andl   $0x0,-0x20(%ebp)
454371:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
454375:	ff 75 e4             	push   -0x1c(%ebp)
454378:	ff 75 10             	push   0x10(%ebp)