42f180:	84 db                	test   %bl,%bl
42f182:	75 1b                	jne    0x42f19f
42f184:	b9 9c a7 40 00       	mov    $0x40a79c,%ecx
42f189:	e8 5f 15 00 00       	call   0x4306ed
42f18e:	8b 8d b8 fe ff ff    	mov    -0x148(%ebp),%ecx
42f194:	50                   	push   %eax
42f195:	68 9c a7 40 00       	push   $0x40a79c
42f19a:	e8 b2 10 00 00       	call   0x430251
42f19f:	8b b5 bc fe ff ff    	mov    -0x144(%ebp),%esi
42f1a5:	32 db                	xor    %bl,%bl
42f1a7:	8b ce                	mov    %esi,%ecx
42f1a9:	88 9d c3 fe ff ff    	mov    %bl,-0x13d(%ebp)
42f1af:	e8 39 15 00 00       	call   0x4306ed
42f1b4:	8b 8d b8 fe ff ff    	mov    -0x148(%ebp),%ecx
42f1ba:	50                   	push   %eax
42f1bb:	56                   	push   %esi
42f1bc:	e8 90 10 00 00       	call   0x430251
42f1c1:	eb 1e                	jmp    0x42f1e1
42f1c3:	b8 c9 f1 42 00       	mov    $0x42f1c9,%eax
42f1c8:	c3                   	ret
42f1c9:	8b 85 a4 fe ff ff    	mov    -0x15c(%ebp),%eax
42f1cf:	8a 9d c3 fe ff ff    	mov    -0x13d(%ebp),%bl
42f1d5:	8b b5 bc fe ff ff    	mov    -0x144(%ebp),%esi
42f1db:	89 85 b8 fe ff ff    	mov    %eax,-0x148(%ebp)
42f1e1:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
42f1e8:	85 f6                	test   %esi,%esi
42f1ea:	74 0c                	je     0x42f1f8
42f1ec:	8b 0d 80 0b 45 00    	mov    0x450b80,%ecx
42f1f2:	56                   	push   %esi
42f1f3:	e8 32 a6 fe ff       	call   0x41982a
42f1f8:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
42f1fc:	ff b5 b0 fe ff ff    	push   -0x150(%ebp)
42f202:	ff 15 14 11 45 00    	call   *0x451114
42f208:	8b 85 b4 fe ff ff    	mov    -0x14c(%ebp),%eax
42f20e:	50                   	push   %eax
42f20f:	8b 08                	mov    (%eax),%ecx
42f211:	8b 71 08             	mov    0x8(%ecx),%esi
42f214:	8b ce                	mov    %esi,%ecx
42f216:	ff 15 c4 12 45 00    	call   *0x4512c4
42f21c:	ff d6                	call   *%esi
42f21e:	8d 8d ac fe ff ff    	lea    -0x154(%ebp),%ecx
42f224:	e8 20 e9 fe ff       	call   0x41db49
42f229:	8b 85 ac fe ff ff    	mov    -0x154(%ebp),%eax
42f22f:	e9 71 fe ff ff       	jmp    0x42f0a5
42f234:	8b bd a8 fe ff ff    	mov    -0x158(%ebp),%edi
42f23a:	8b 07                	mov    (%edi),%eax
42f23c:	8b 70 1c             	mov    0x1c(%eax),%esi
42f23f:	8b ce                	mov    %esi,%ecx
42f241:	ff 15 c4 12 45 00    	call   *0x4512c4
42f247:	8b cf                	mov    %edi,%ecx
42f249:	ff d6                	call   *%esi
42f24b:	e8 0e 04 ff ff       	call   0x41f65e
42f250:	c3                   	ret
42f251:	6a 0c                	push   $0xc
42f253:	b8 b3 2c 42 00       	mov    $0x422cb3,%eax
42f258:	e8 10 04 ff ff       	call   0x41f66d
42f25d:	8b c1                	mov    %ecx,%eax
42f25f:	89 45 ec             	mov    %eax,-0x14(%ebp)
42f262:	8b 5d 08             	mov    0x8(%ebp),%ebx
42f265:	33 d2                	xor    %edx,%edx
42f267:	89 55 f0             	mov    %edx,-0x10(%ebp)
42f26a:	85 db                	test   %ebx,%ebx
42f26c:	75 05                	jne    0x42f273
42f26e:	6a 57                	push   $0x57
42f270:	58                   	pop    %eax
42f271:	eb 63                	jmp    0x42f2d6
42f273:	8d 4d f0             	lea    -0x10(%ebp),%ecx
42f276:	89 13                	mov    %edx,(%ebx)
42f278:	51                   	push   %ecx
42f279:	52                   	push   %edx
42f27a:	52                   	push   %edx
42f27b:	52                   	push   %edx
42f27c:	68 24 7b 40 00       	push   $0x407b24
42f281:	50                   	push   %eax
42f282:	ff 15 0c 11 45 00    	call   *0x45110c
42f288:	8b f0                	mov    %eax,%esi
42f28a:	85 f6                	test   %esi,%esi
42f28c:	75 46                	jne    0x42f2d4
42f28e:	ff 75 f0             	push   -0x10(%ebp)
42f291:	e8 45 ef fe ff       	call   0x41e1db
42f296:	8b f8                	mov    %eax,%edi
42f298:	59                   	pop    %ecx
42f299:	85 ff                	test   %edi,%edi
42f29b:	75 04                	jne    0x42f2a1
42f29d:	6a 08                	push   $0x8
42f29f:	eb cf                	jmp    0x42f270
42f2a1:	8d 45 f0             	lea    -0x10(%ebp),%eax
42f2a4:	50                   	push   %eax
42f2a5:	57                   	push   %edi
42f2a6:	8d 45 e8             	lea    -0x18(%ebp),%eax
42f2a9:	50                   	push   %eax
42f2aa:	6a 00                	push   $0x0
42f2ac:	68 24 7b 40 00       	push   $0x407b24
42f2b1:	ff 75 ec             	push   -0x14(%ebp)
42f2b4:	ff 15 0c 11 45 00    	call   *0x45110c
42f2ba:	8b f0                	mov    %eax,%esi
42f2bc:	85 f6                	test   %esi,%esi
42f2be:	74 12                	je     0x42f2d2
42f2c0:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42f2c4:	8b 0d 80 0b 45 00    	mov    0x450b80,%ecx
42f2ca:	57                   	push   %edi
42f2cb:	e8 5a a5 fe ff       	call   0x41982a
42f2d0:	eb 02                	jmp    0x42f2d4
42f2d2:	89 3b                	mov    %edi,(%ebx)
42f2d4:	8b c6                	mov    %esi,%eax
42f2d6:	e8 60 03 ff ff       	call   0x41f63b
42f2db:	c2 04 00             	ret    $0x4
42f2de:	8b ff                	mov    %edi,%edi
42f2e0:	55                   	push   %ebp
42f2e1:	8b ec                	mov    %esp,%ebp
42f2e3:	51                   	push   %ecx
42f2e4:	51                   	push   %ecx
42f2e5:	53                   	push   %ebx
42f2e6:	56                   	push   %esi
42f2e7:	57                   	push   %edi
42f2e8:	33 d2                	xor    %edx,%edx
42f2ea:	8b f1                	mov    %ecx,%esi
42f2ec:	bb 5c 0b 45 00       	mov    $0x450b5c,%ebx
42f2f1:	33 ff                	xor    %edi,%edi
42f2f3:	42                   	inc    %edx
42f2f4:	89 7d fc             	mov    %edi,-0x4(%ebp)
42f2f7:	8b cb                	mov    %ebx,%ecx
42f2f9:	e8 f8 a6 fe ff       	call   0x4199f6
42f2fe:	8d 45 fc             	lea    -0x4(%ebp),%eax
42f301:	89 75 f8             	mov    %esi,-0x8(%ebp)
42f304:	50                   	push   %eax
42f305:	8d 45 f8             	lea    -0x8(%ebp),%eax
42f308:	50                   	push   %eax
42f309:	e8 fe fc ff ff       	call   0x42f00c
42f30e:	85 c0                	test   %eax,%eax
42f310:	75 05                	jne    0x42f317
42f312:	8b 45 fc             	mov    -0x4(%ebp),%eax
42f315:	8b 38                	mov    (%eax),%edi
42f317:	80 3d 74 0b 45 00 00 	cmpb   $0x0,0x450b74
42f31e:	74 07                	je     0x42f327
42f320:	53                   	push   %ebx
42f321:	ff 15 40 11 45 00    	call   *0x451140
42f327:	8b c7                	mov    %edi,%eax
42f329:	5f                   	pop    %edi
42f32a:	5e                   	pop    %esi
42f32b:	5b                   	pop    %ebx
42f32c:	c9                   	leave
42f32d:	c3                   	ret
42f32e:	8b ff                	mov    %edi,%edi
42f330:	55                   	push   %ebp
42f331:	8b ec                	mov    %esp,%ebp
42f333:	51                   	push   %ecx
42f334:	51                   	push   %ecx
42f335:	56                   	push   %esi
42f336:	57                   	push   %edi
42f337:	33 f6                	xor    %esi,%esi
42f339:	ff 15 e4 10 45 00    	call   *0x4510e4
42f33f:	33 d2                	xor    %edx,%edx
42f341:	89 45 f8             	mov    %eax,-0x8(%ebp)
42f344:	bf 5c 0b 45 00       	mov    $0x450b5c,%edi
42f349:	89 75 fc             	mov    %esi,-0x4(%ebp)
42f34c:	42                   	inc    %edx
42f34d:	8b cf                	mov    %edi,%ecx
42f34f:	e8 a2 a6 fe ff       	call   0x4199f6
42f354:	8d 45 fc             	lea    -0x4(%ebp),%eax
42f357:	50                   	push   %eax
42f358:	8d 45 f8             	lea    -0x8(%ebp),%eax
42f35b:	50                   	push   %eax
42f35c:	e8 6c fc ff ff       	call   0x42efcd
42f361:	85 c0                	test   %eax,%eax
42f363:	75 05                	jne    0x42f36a
42f365:	8b 45 fc             	mov    -0x4(%ebp),%eax
42f368:	8b 30                	mov    (%eax),%esi
42f36a:	80 3d 74 0b 45 00 00 	cmpb   $0x0,0x450b74
42f371:	74 07                	je     0x42f37a
42f373:	57                   	push   %edi
42f374:	ff 15 40 11 45 00    	call   *0x451140
42f37a:	5f                   	pop    %edi
42f37b:	8b c6                	mov    %esi,%eax
42f37d:	5e                   	pop    %esi
42f37e:	c9                   	leave
42f37f:	c3                   	ret
42f380:	8b ff                	mov    %edi,%edi
42f382:	56                   	push   %esi
42f383:	8b f1                	mov    %ecx,%esi
42f385:	8b 16                	mov    (%esi),%edx
42f387:	85 d2                	test   %edx,%edx
42f389:	74 2a                	je     0x42f3b5
42f38b:	8b 42 0c             	mov    0xc(%edx),%eax
42f38e:	85 c0                	test   %eax,%eax
42f390:	74 0b                	je     0x42f39d
42f392:	8b d0                	mov    %eax,%edx
42f394:	8b 42 08             	mov    0x8(%edx),%eax
42f397:	85 c0                	test   %eax,%eax
42f399:	75 f7                	jne    0x42f392
42f39b:	eb 18                	jmp    0x42f3b5
42f39d:	8b 4a 10             	mov    0x10(%edx),%ecx
42f3a0:	eb 0d                	jmp    0x42f3af
42f3a2:	8b 42 10             	mov    0x10(%edx),%eax
42f3a5:	39 50 0c             	cmp    %edx,0xc(%eax)
42f3a8:	75 09                	jne    0x42f3b3
42f3aa:	8b d1                	mov    %ecx,%edx
42f3ac:	8b 49 10             	mov    0x10(%ecx),%ecx
42f3af:	85 c9                	test   %ecx,%ecx
42f3b1:	75 ef                	jne    0x42f3a2
42f3b3:	8b d1                	mov    %ecx,%edx
42f3b5:	89 16                	mov    %edx,(%esi)
42f3b7:	8b c6                	mov    %esi,%eax
42f3b9:	5e                   	pop    %esi
42f3ba:	c3                   	ret
42f3bb:	8b ff                	mov    %edi,%edi
42f3bd:	56                   	push   %esi
42f3be:	8b f1                	mov    %ecx,%esi
42f3c0:	8b 16                	mov    (%esi),%edx
42f3c2:	85 d2                	test   %edx,%edx
42f3c4:	74 2a                	je     0x42f3f0
42f3c6:	8b 42 1c             	mov    0x1c(%edx),%eax
42f3c9:	85 c0                	test   %eax,%eax
42f3cb:	74 0b                	je     0x42f3d8
42f3cd:	8b d0                	mov    %eax,%edx
42f3cf:	8b 42 18             	mov    0x18(%edx),%eax
42f3d2:	85 c0                	test   %eax,%eax
42f3d4:	75 f7                	jne    0x42f3cd
42f3d6:	eb 18                	jmp    0x42f3f0
42f3d8:	8b 4a 20             	mov    0x20(%edx),%ecx
42f3db:	eb 0d                	jmp    0x42f3ea
42f3dd:	8b 42 20             	mov    0x20(%edx),%eax
42f3e0:	39 50 1c             	cmp    %edx,0x1c(%eax)
42f3e3:	75 09                	jne    0x42f3ee
42f3e5:	8b d1                	mov    %ecx,%edx
42f3e7:	8b 49 20             	mov    0x20(%ecx),%ecx
42f3ea:	85 c9                	test   %ecx,%ecx
42f3ec:	75 ef                	jne    0x42f3dd
42f3ee:	8b d1                	mov    %ecx,%edx
42f3f0:	89 16                	mov    %edx,(%esi)
42f3f2:	8b c6                	mov    %esi,%eax
42f3f4:	5e                   	pop    %esi
42f3f5:	c3                   	ret
42f3f6:	6a 10                	push   $0x10
42f3f8:	b8 54 3a 42 00       	mov    $0x423a54,%eax
42f3fd:	e8 6b 02 ff ff       	call   0x41f66d
42f402:	8b f9                	mov    %ecx,%edi
42f404:	8b 47 44             	mov    0x44(%edi),%eax
42f407:	33 c9                	xor    %ecx,%ecx
42f409:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
42f40c:	89 4d e8             	mov    %ecx,-0x18(%ebp)
42f40f:	89 45 ec             	mov    %eax,-0x14(%ebp)
42f412:	89 45 f0             	mov    %eax,-0x10(%ebp)
42f415:	89 4d fc             	mov    %ecx,-0x4(%ebp)
42f418:	8d 47 6c             	lea    0x6c(%edi),%eax
42f41b:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
42f41e:	51                   	push   %ecx
42f41f:	50                   	push   %eax
42f420:	8b cf                	mov    %edi,%ecx
42f422:	e8 55 f9 ff ff       	call   0x42ed7c
42f427:	8b f0                	mov    %eax,%esi
42f429:	8d 47 6c             	lea    0x6c(%edi),%eax
42f42c:	85 f6                	test   %esi,%esi
42f42e:	74 eb                	je     0x42f41b
42f430:	81 fe 02 00 00 80    	cmp    $0x80000002,%esi
42f436:	75 3b                	jne    0x42f473
42f438:	33 d2                	xor    %edx,%edx
42f43a:	8d 5f 18             	lea    0x18(%edi),%ebx
42f43d:	42                   	inc    %edx
42f43e:	8b cb                	mov    %ebx,%ecx
42f440:	e8 b1 a5 fe ff       	call   0x4199f6
42f445:	8d 45 e4             	lea    -0x1c(%ebp),%eax
42f448:	50                   	push   %eax
42f449:	8d 4f 6c             	lea    0x6c(%edi),%ecx
42f44c:	e8 fc 01 00 00       	call   0x42f64d
42f451:	80 7b 18 00          	cmpb   $0x0,0x18(%ebx)
42f455:	8b f0                	mov    %eax,%esi
42f457:	74 07                	je     0x42f460
42f459:	53                   	push   %ebx
42f45a:	ff 15 40 11 45 00    	call   *0x451140
42f460:	85 f6                	test   %esi,%esi
42f462:	75 16                	jne    0x42f47a
42f464:	ff 75 0c             	push   0xc(%ebp)
42f467:	8b cf                	mov    %edi,%ecx
42f469:	ff 75 08             	push   0x8(%ebp)
42f46c:	e8 3d 00 00 00       	call   0x42f4ae
42f471:	8b f0                	mov    %eax,%esi
42f473:	8d 47 6c             	lea    0x6c(%edi),%eax
42f476:	85 f6                	test   %esi,%esi
42f478:	74 a1                	je     0x42f41b
42f47a:	8d 47 6c             	lea    0x6c(%edi),%eax
42f47d:	81 fe 0d 00 00 80    	cmp    $0x8000000d,%esi
42f483:	74 96                	je     0x42f41b
42f485:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
42f488:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
42f48f:	e8 c4 77 fe ff       	call   0x416c58
42f494:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
42f497:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
42f49b:	e8 b8 77 fe ff       	call   0x416c58
42f4a0:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
42f4a4:	8b c6                	mov    %esi,%eax
42f4a6:	e8 90 01 ff ff       	call   0x41f63b
42f4ab:	c2 08 00             	ret    $0x8
42f4ae:	8b ff                	mov    %edi,%edi
42f4b0:	55                   	push   %ebp
42f4b1:	8b ec                	mov    %esp,%ebp
42f4b3:	83 ec 40             	sub    $0x40,%esp
42f4b6:	a1 54 02 45 00       	mov    0x450254,%eax
42f4bb:	33 c5                	xor    %ebp,%eax
42f4bd:	89 45 fc             	mov    %eax,-0x4(%ebp)
42f4c0:	8b 45 0c             	mov    0xc(%ebp),%eax
42f4c3:	83 65 e0 00          	andl   $0x0,-0x20(%ebp)
42f4c7:	53                   	push   %ebx
42f4c8:	56                   	push   %esi
42f4c9:	57                   	push   %edi
42f4ca:	8b 7d 08             	mov    0x8(%ebp),%edi
42f4cd:	8b d9                	mov    %ecx,%ebx
42f4cf:	8b cf                	mov    %edi,%ecx
42f4d1:	89 45 dc             	mov    %eax,-0x24(%ebp)
42f4d4:	33 f6                	xor    %esi,%esi
42f4d6:	e8 03 fe ff ff       	call   0x42f2de
42f4db:	8b c8                	mov    %eax,%ecx
42f4dd:	85 c9                	test   %ecx,%ecx
42f4df:	0f 84 53 01 00 00    	je     0x42f638
42f4e5:	8b 47 18             	mov    0x18(%edi),%eax
42f4e8:	8b 7d dc             	mov    -0x24(%ebp),%edi
42f4eb:	89 45 e8             	mov    %eax,-0x18(%ebp)
42f4ee:	8b 43 40             	mov    0x40(%ebx),%eax
42f4f1:	b3 01                	mov    $0x1,%bl
42f4f3:	89 45 ec             	mov    %eax,-0x14(%ebp)
42f4f6:	8b 41 4c             	mov    0x4c(%ecx),%eax
42f4f9:	89 45 f0             	mov    %eax,-0x10(%ebp)
42f4fc:	8b 41 40             	mov    0x40(%ecx),%eax
42f4ff:	89 45 f4             	mov    %eax,-0xc(%ebp)
42f502:	8b 41 3c             	mov    0x3c(%ecx),%eax
42f505:	89 45 f8             	mov    %eax,-0x8(%ebp)
42f508:	88 5d e7             	mov    %bl,-0x19(%ebp)
42f50b:	85 f6                	test   %esi,%esi
42f50d:	0f 85 27 01 00 00    	jne    0x42f63a
42f513:	68 ff 1c 00 00       	push   $0x1cff
42f518:	ff 37                	push   (%edi)
42f51a:	8d 45 e8             	lea    -0x18(%ebp),%eax
42f51d:	56                   	push   %esi
42f51e:	50                   	push   %eax
42f51f:	6a 05                	push   $0x5
42f521:	ff 15 b8 30 45 00    	call   *0x4530b8
42f527:	83 f8 04             	cmp    $0x4,%eax
42f52a:	77 2d                	ja     0x42f559
42f52c:	0f 84 db 00 00 00    	je     0x42f60d
42f532:	85 c0                	test   %eax,%eax
42f534:	0f 84 fe 00 00 00    	je     0x42f638
42f53a:	83 f8 01             	cmp    $0x1,%eax
42f53d:	0f 84 dd 00 00 00    	je     0x42f620
42f543:	83 c0 fe             	add    $0xfffffffe,%eax
42f546:	83 f8 01             	cmp    $0x1,%eax
42f549:	0f 87 ca 00 00 00    	ja     0x42f619
42f54f:	be 0b 00 00 80       	mov    $0x8000000b,%esi
42f554:	e9 d5 00 00 00       	jmp    0x42f62e
42f559:	83 f8 05             	cmp    $0x5,%eax
42f55c:	74 6c                	je     0x42f5ca