48008c:	03 cf                	add    %edi,%ecx
48008e:	e8 ce fe f9 ff       	call   0x41ff61
480093:	8b 07                	mov    (%edi),%eax
480095:	53                   	push   %ebx
480096:	6a 03                	push   $0x3
480098:	8b 48 04             	mov    0x4(%eax),%ecx
48009b:	03 cf                	add    %edi,%ecx
48009d:	e8 01 6a fd ff       	call   0x456aa3
4800a2:	8b 75 0c             	mov    0xc(%ebp),%esi
4800a5:	8b ce                	mov    %esi,%ecx
4800a7:	e8 74 99 f8 ff       	call   0x409a20
4800ac:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4800b3:	89 1e                	mov    %ebx,(%esi)
4800b5:	e9 d9 01 00 00       	jmp    0x480293
4800ba:	8b 74 24 0c          	mov    0xc(%esp),%esi
4800be:	eb 04                	jmp    0x4800c4
4800c0:	8b 74 24 18          	mov    0x18(%esp),%esi
4800c4:	8d 44 24 10          	lea    0x10(%esp),%eax
4800c8:	50                   	push   %eax
4800c9:	8b 44 24 18          	mov    0x18(%esp),%eax
4800cd:	0d 1f 00 02 00       	or     $0x2001f,%eax
4800d2:	50                   	push   %eax
4800d3:	6a 00                	push   $0x0
4800d5:	ff 74 24 44          	push   0x44(%esp)
4800d9:	56                   	push   %esi
4800da:	ff 15 18 f0 48 00    	call   *0x48f018
4800e0:	89 44 24 18          	mov    %eax,0x18(%esp)
4800e4:	85 c0                	test   %eax,%eax
4800e6:	74 48                	je     0x480130
4800e8:	8b 0f                	mov    (%edi),%ecx
4800ea:	6a 00                	push   $0x0
4800ec:	50                   	push   %eax
4800ed:	8b 49 04             	mov    0x4(%ecx),%ecx
4800f0:	03 cf                	add    %edi,%ecx
4800f2:	e8 6a fe f9 ff       	call   0x41ff61
4800f7:	8b 07                	mov    (%edi),%eax
4800f9:	6a 00                	push   $0x0
4800fb:	6a 01                	push   $0x1
4800fd:	8b 48 04             	mov    0x4(%eax),%ecx
480100:	03 cf                	add    %edi,%ecx
480102:	e8 9c 69 fd ff       	call   0x456aa3
480107:	8b 75 0c             	mov    0xc(%ebp),%esi
48010a:	8b ce                	mov    %esi,%ecx
48010c:	6a 02                	push   $0x2
48010e:	5b                   	pop    %ebx
48010f:	e8 0c 99 f8 ff       	call   0x409a20
480114:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
48011b:	39 5c 24 18          	cmp    %ebx,0x18(%esp)
48011f:	75 08                	jne    0x480129
480121:	83 26 00             	andl   $0x0,(%esi)
480124:	e9 59 01 00 00       	jmp    0x480282
480129:	89 1e                	mov    %ebx,(%esi)
48012b:	e9 52 01 00 00       	jmp    0x480282
480130:	4b                   	dec    %ebx
480131:	0f 84 81 00 00 00    	je     0x4801b8
480137:	4b                   	dec    %ebx
480138:	0f 85 44 01 00 00    	jne    0x480282
48013e:	8b 45 08             	mov    0x8(%ebp),%eax
480141:	8b 40 04             	mov    0x4(%eax),%eax
480144:	8b 70 04             	mov    0x4(%eax),%esi
480147:	8b ce                	mov    %esi,%ecx
480149:	e8 49 98 f8 ff       	call   0x409997
48014e:	8b 46 08             	mov    0x8(%esi),%eax
480151:	ff 30                	push   (%eax)
480153:	ff 74 24 14          	push   0x14(%esp)
480157:	ff 15 08 f0 48 00    	call   *0x48f008
48015d:	85 c0                	test   %eax,%eax
48015f:	74 48                	je     0x4801a9
480161:	6a 02                	push   $0x2
480163:	5b                   	pop    %ebx
480164:	3b c3                	cmp    %ebx,%eax
480166:	75 0f                	jne    0x480177
480168:	8b 75 0c             	mov    0xc(%ebp),%esi
48016b:	8b ce                	mov    %esi,%ecx
48016d:	e8 ae 98 f8 ff       	call   0x409a20
480172:	83 26 00             	andl   $0x0,(%esi)
480175:	eb 2b                	jmp    0x4801a2
480177:	6a 00                	push   $0x0
480179:	50                   	push   %eax
48017a:	8b 07                	mov    (%edi),%eax
48017c:	8b 48 04             	mov    0x4(%eax),%ecx
48017f:	03 cf                	add    %edi,%ecx
480181:	e8 db fd f9 ff       	call   0x41ff61
480186:	8b 07                	mov    (%edi),%eax
480188:	6a 00                	push   $0x0
48018a:	6a fe                	push   $0xfffffffe
48018c:	8b 48 04             	mov    0x4(%eax),%ecx
48018f:	03 cf                	add    %edi,%ecx
480191:	e8 0d 69 fd ff       	call   0x456aa3
480196:	8b 75 0c             	mov    0xc(%ebp),%esi
480199:	8b ce                	mov    %esi,%ecx
48019b:	e8 80 98 f8 ff       	call   0x409a20
4801a0:	89 1e                	mov    %ebx,(%esi)
4801a2:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4801a9:	ff 74 24 10          	push   0x10(%esp)
4801ad:	ff 15 1c f0 48 00    	call   *0x48f01c
4801b3:	e9 ca 00 00 00       	jmp    0x480282
4801b8:	8b 54 24 14          	mov    0x14(%esp),%edx
4801bc:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4801c0:	e8 68 10 00 00       	call   0x48122d
4801c5:	ff 74 24 10          	push   0x10(%esp)
4801c9:	8a d8                	mov    %al,%bl
4801cb:	ff 15 1c f0 48 00    	call   *0x48f01c
4801d1:	84 db                	test   %bl,%bl
4801d3:	75 2c                	jne    0x480201
4801d5:	8b 07                	mov    (%edi),%eax
4801d7:	6a 00                	push   $0x0
4801d9:	6a fe                	push   $0xfffffffe
4801db:	8b 48 04             	mov    0x4(%eax),%ecx
4801de:	03 cf                	add    %edi,%ecx
4801e0:	e8 be 68 fd ff       	call   0x456aa3
4801e5:	8b 75 0c             	mov    0xc(%ebp),%esi
4801e8:	8b ce                	mov    %esi,%ecx
4801ea:	e8 31 98 f8 ff       	call   0x409a20
4801ef:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4801f6:	c7 06 02 00 00 00    	movl   $0x2,(%esi)
4801fc:	e9 81 00 00 00       	jmp    0x480282
480201:	33 db                	xor    %ebx,%ebx
480203:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
480207:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
48020b:	89 5c 24 24          	mov    %ebx,0x24(%esp)
48020f:	e8 5e 0e 00 00       	call   0x481072
480214:	84 c0                	test   %al,%al
480216:	74 17                	je     0x48022f
480218:	53                   	push   %ebx
480219:	ff 74 24 18          	push   0x18(%esp)
48021d:	8d 4c 24 24          	lea    0x24(%esp),%ecx
480221:	ff 74 24 40          	push   0x40(%esp)
480225:	56                   	push   %esi
480226:	e8 59 fd ff ff       	call   0x47ff84
48022b:	ff d0                	call   *%eax
48022d:	eb 0b                	jmp    0x48023a
48022f:	ff 74 24 38          	push   0x38(%esp)
480233:	56                   	push   %esi
480234:	ff 15 0c f0 48 00    	call   *0x48f00c
48023a:	85 c0                	test   %eax,%eax
48023c:	74 34                	je     0x480272
48023e:	53                   	push   %ebx
48023f:	50                   	push   %eax
480240:	8b 07                	mov    (%edi),%eax
480242:	8b 48 04             	mov    0x4(%eax),%ecx
480245:	03 cf                	add    %edi,%ecx
480247:	e8 15 fd f9 ff       	call   0x41ff61
48024c:	8b 07                	mov    (%edi),%eax
48024e:	53                   	push   %ebx
48024f:	6a fe                	push   $0xfffffffe
480251:	8b 48 04             	mov    0x4(%eax),%ecx
480254:	03 cf                	add    %edi,%ecx
480256:	e8 48 68 fd ff       	call   0x456aa3
48025b:	8b 75 0c             	mov    0xc(%ebp),%esi
48025e:	8b ce                	mov    %esi,%ecx
480260:	e8 bb 97 f8 ff       	call   0x409a20
480265:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
48026c:	c7 06 02 00 00 00    	movl   $0x2,(%esi)
480272:	39 5c 24 1c          	cmp    %ebx,0x1c(%esp)
480276:	74 0a                	je     0x480282
480278:	ff 74 24 1c          	push   0x1c(%esp)
48027c:	ff 15 98 f1 48 00    	call   *0x48f198
480282:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
480287:	74 0a                	je     0x480293
480289:	ff 74 24 0c          	push   0xc(%esp)
48028d:	ff 15 1c f0 48 00    	call   *0x48f01c
480293:	8d 4c 24 58          	lea    0x58(%esp),%ecx
480297:	e8 c8 57 f8 ff       	call   0x405a64
48029c:	8d 4c 24 38          	lea    0x38(%esp),%ecx
4802a0:	e8 bf 57 f8 ff       	call   0x405a64
4802a5:	8d 4c 24 28          	lea    0x28(%esp),%ecx
4802a9:	e8 b6 57 f8 ff       	call   0x405a64
4802ae:	8d 4c 24 48          	lea    0x48(%esp),%ecx
4802b2:	e8 ad 57 f8 ff       	call   0x405a64
4802b7:	5f                   	pop    %edi
4802b8:	5e                   	pop    %esi
4802b9:	33 c0                	xor    %eax,%eax
4802bb:	5b                   	pop    %ebx
4802bc:	8b e5                	mov    %ebp,%esp
4802be:	5d                   	pop    %ebp
4802bf:	c2 08 00             	ret    $0x8
4802c2:	55                   	push   %ebp
4802c3:	8b ec                	mov    %esp,%ebp
4802c5:	83 e4 f8             	and    $0xfffffff8,%esp
4802c8:	81 ec 54 02 00 00    	sub    $0x254,%esp
4802ce:	83 24 24 00          	andl   $0x0,(%esp)
4802d2:	53                   	push   %ebx
4802d3:	56                   	push   %esi
4802d4:	57                   	push   %edi
4802d5:	8b f9                	mov    %ecx,%edi
4802d7:	c7 44 24 18 ff 00 00 	movl   $0xff,0x18(%esp)
4802de:	00
4802df:	8d 4c 24 30          	lea    0x30(%esp),%ecx
4802e3:	e8 df 74 f8 ff       	call   0x4077c7
4802e8:	8d 4c 24 20          	lea    0x20(%esp),%ecx
4802ec:	e8 d6 74 f8 ff       	call   0x4077c7
4802f1:	8d 4c 24 40          	lea    0x40(%esp),%ecx
4802f5:	e8 cd 74 f8 ff       	call   0x4077c7
4802fa:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4802fd:	68 10 f9 48 00       	push   $0x48f910
480302:	e8 f1 98 f8 ff       	call   0x409bf8
480307:	8b 5d 08             	mov    0x8(%ebp),%ebx
48030a:	8b 43 04             	mov    0x4(%ebx),%eax
48030d:	8b 30                	mov    (%eax),%esi
48030f:	8b ce                	mov    %esi,%ecx
480311:	e8 81 96 f8 ff       	call   0x409997
480316:	8b 46 08             	mov    0x8(%esi),%eax
480319:	83 ec 10             	sub    $0x10,%esp
48031c:	8b cc                	mov    %esp,%ecx
48031e:	ff 30                	push   (%eax)
480320:	e8 1c 7c f8 ff       	call   0x407f41
480325:	8d 44 24 50          	lea    0x50(%esp),%eax
480329:	50                   	push   %eax
48032a:	8d 44 24 34          	lea    0x34(%esp),%eax
48032e:	50                   	push   %eax
48032f:	8d 44 24 48          	lea    0x48(%esp),%eax
480333:	50                   	push   %eax
480334:	e8 0e 10 00 00       	call   0x481347
480339:	8b 44 24 20          	mov    0x20(%esp),%eax
48033d:	83 ec 10             	sub    $0x10,%esp
480340:	8b cc                	mov    %esp,%ecx
480342:	89 01                	mov    %eax,(%ecx)
480344:	8b 44 24 34          	mov    0x34(%esp),%eax
480348:	89 41 04             	mov    %eax,0x4(%ecx)
48034b:	8b 44 24 38          	mov    0x38(%esp),%eax
48034f:	89 41 08             	mov    %eax,0x8(%ecx)
480352:	8b 44 24 3c          	mov    0x3c(%esp),%eax
480356:	89 41 0c             	mov    %eax,0xc(%ecx)
480359:	ff 00                	incl   (%eax)
48035b:	8d 44 24 2c          	lea    0x2c(%esp),%eax
48035f:	50                   	push   %eax
480360:	8d 44 24 24          	lea    0x24(%esp),%eax
480364:	50                   	push   %eax
480365:	e8 3b 0d 00 00       	call   0x4810a5
48036a:	84 c0                	test   %al,%al
48036c:	75 06                	jne    0x480374
48036e:	6a 00                	push   $0x0
480370:	6a 02                	push   $0x2
480372:	eb 22                	jmp    0x480396
480374:	83 7c 24 34 00       	cmpl   $0x0,0x34(%esp)
480379:	74 32                	je     0x4803ad
48037b:	8d 44 24 0c          	lea    0xc(%esp),%eax
48037f:	50                   	push   %eax
480380:	ff 74 24 14          	push   0x14(%esp)
480384:	ff 74 24 38          	push   0x38(%esp)
480388:	ff 15 24 f0 48 00    	call   *0x48f024
48038e:	85 c0                	test   %eax,%eax
480390:	74 15                	je     0x4803a7
480392:	6a 00                	push   $0x0
480394:	6a 03                	push   $0x3
480396:	8b 07                	mov    (%edi),%eax
480398:	8b 48 04             	mov    0x4(%eax),%ecx
48039b:	03 cf                	add    %edi,%ecx
48039d:	e8 01 67 fd ff       	call   0x456aa3
4803a2:	e9 a2 00 00 00       	jmp    0x480449
4803a7:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4803ab:	eb 04                	jmp    0x4803b1
4803ad:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4803b1:	8d 44 24 14          	lea    0x14(%esp),%eax
4803b5:	50                   	push   %eax
4803b6:	8b 44 24 20          	mov    0x20(%esp),%eax
4803ba:	0d 19 00 02 00       	or     $0x20019,%eax
4803bf:	50                   	push   %eax
4803c0:	6a 00                	push   $0x0
4803c2:	ff 74 24 4c          	push   0x4c(%esp)
4803c6:	51                   	push   %ecx
4803c7:	ff 15 18 f0 48 00    	call   *0x48f018
4803cd:	8b 35 1c f0 48 00    	mov    0x48f01c,%esi
4803d3:	85 c0                	test   %eax,%eax
4803d5:	74 12                	je     0x4803e9
4803d7:	8b 07                	mov    (%edi),%eax
4803d9:	6a 00                	push   $0x0
4803db:	6a 01                	push   $0x1
4803dd:	8b 48 04             	mov    0x4(%eax),%ecx
4803e0:	03 cf                	add    %edi,%ecx
4803e2:	e8 bc 66 fd ff       	call   0x456aa3
4803e7:	eb 53                	jmp    0x48043c
4803e9:	8b 43 04             	mov    0x4(%ebx),%eax
4803ec:	8d 4c 24 50          	lea    0x50(%esp),%ecx
4803f0:	51                   	push   %ecx
4803f1:	33 db                	xor    %ebx,%ebx
4803f3:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
4803f7:	53                   	push   %ebx
4803f8:	53                   	push   %ebx
4803f9:	53                   	push   %ebx
4803fa:	51                   	push   %ecx
4803fb:	8d 4c 24 6c          	lea    0x6c(%esp),%ecx
4803ff:	51                   	push   %ecx
480400:	8b 48 04             	mov    0x4(%eax),%ecx
480403:	e8 94 98 f8 ff       	call   0x409c9c
480408:	48                   	dec    %eax
480409:	50                   	push   %eax
48040a:	ff 74 24 30          	push   0x30(%esp)
48040e:	ff 15 10 f0 48 00    	call   *0x48f010
480414:	85 c0                	test   %eax,%eax
480416:	74 11                	je     0x480429
480418:	8b 07                	mov    (%edi),%eax
48041a:	53                   	push   %ebx
48041b:	6a ff                	push   $0xffffffff
48041d:	8b 48 04             	mov    0x4(%eax),%ecx
480420:	03 cf                	add    %edi,%ecx
480422:	e8 7c 66 fd ff       	call   0x456aa3
480427:	eb 0d                	jmp    0x480436
480429:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48042c:	8d 44 24 58          	lea    0x58(%esp),%eax
480430:	50                   	push   %eax
480431:	e8 c2 97 f8 ff       	call   0x409bf8
480436:	ff 74 24 14          	push   0x14(%esp)
48043a:	ff d6                	call   *%esi
48043c:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
480441:	74 06                	je     0x480449
480443:	ff 74 24 0c          	push   0xc(%esp)
480447:	ff d6                	call   *%esi
480449:	8d 4c 24 40          	lea    0x40(%esp),%ecx
48044d:	e8 12 56 f8 ff       	call   0x405a64
480452:	8d 4c 24 20          	lea    0x20(%esp),%ecx
480456:	e8 09 56 f8 ff       	call   0x405a64
48045b:	8d 4c 24 30          	lea    0x30(%esp),%ecx
48045f:	e8 00 56 f8 ff       	call   0x405a64
480464:	5f                   	pop    %edi
480465:	5e                   	pop    %esi
480466:	33 c0                	xor    %eax,%eax
480468:	5b                   	pop    %ebx
480469:	8b e5                	mov    %ebp,%esp
48046b:	5d                   	pop    %ebp
48046c:	c2 08 00             	ret    $0x8
48046f:	55                   	push   %ebp
480470:	8b ec                	mov    %esp,%ebp
480472:	83 e4 f8             	and    $0xfffffff8,%esp
480475:	83 ec 54             	sub    $0x54,%esp
480478:	83 64 24 04 00       	andl   $0x0,0x4(%esp)
48047d:	53                   	push   %ebx
48047e:	56                   	push   %esi
48047f:	57                   	push   %edi
480480:	68 02 80 00 00       	push   $0x8002
480485:	8b f9                	mov    %ecx,%edi
480487:	e8 6a 0b fa ff       	call   0x420ff6
48048c:	59                   	pop    %ecx
48048d:	50                   	push   %eax
48048e:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
480492:	e8 f7 4e f8 ff       	call   0x40538e
480497:	8d 4c 24 40          	lea    0x40(%esp),%ecx
48049b:	c7 44 24 20 ff 3f 00 	movl   $0x3fff,0x20(%esp)
4804a2:	00
4804a3:	e8 1f 73 f8 ff       	call   0x4077c7
4804a8:	8d 4c 24 30          	lea    0x30(%esp),%ecx
4804ac:	e8 16 73 f8 ff       	call   0x4077c7
4804b1:	8d 4c 24 50          	lea    0x50(%esp),%ecx
4804b5:	e8 0d 73 f8 ff       	call   0x4077c7
4804ba:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4804bd:	68 10 f9 48 00       	push   $0x48f910
4804c2:	e8 31 97 f8 ff       	call   0x409bf8
4804c7:	8b 5d 08             	mov    0x8(%ebp),%ebx
4804ca:	8b 43 04             	mov    0x4(%ebx),%eax