42125c:	ff 15 e8 b0 44 00    	call   *0x44b0e8
421262:	0f b7 c8             	movzwl %ax,%ecx
421265:	81 c9 00 00 07 80    	or     $0x80070000,%ecx
42126b:	85 c0                	test   %eax,%eax
42126d:	0f 4e c8             	cmovle %eax,%ecx
421270:	b8 05 40 00 80       	mov    $0x80004005,%eax
421275:	85 c9                	test   %ecx,%ecx
421277:	0f 49 c8             	cmovns %eax,%ecx
42127a:	51                   	push   %ecx
42127b:	68 4b 01 00 00       	push   $0x14b
421280:	68 b8 a7 45 00       	push   $0x45a7b8
421285:	89 4d fc             	mov    %ecx,-0x4(%ebp)
421288:	e8 46 25 fe ff       	call   0x4037d3
42128d:	68 38 a9 45 00       	push   $0x45a938
421292:	e9 90 00 00 00       	jmp    0x421327
421297:	8d 45 fc             	lea    -0x4(%ebp),%eax
42129a:	50                   	push   %eax
42129b:	ff 76 20             	push   0x20(%esi)
42129e:	ff 15 24 b2 44 00    	call   *0x44b224
4212a4:	85 c0                	test   %eax,%eax
4212a6:	0f 85 8a 00 00 00    	jne    0x421336
4212ac:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4212b2:	0f b7 c8             	movzwl %ax,%ecx
4212b5:	81 c9 00 00 07 80    	or     $0x80070000,%ecx
4212bb:	85 c0                	test   %eax,%eax
4212bd:	0f 4e c8             	cmovle %eax,%ecx
4212c0:	b8 05 40 00 80       	mov    $0x80004005,%eax
4212c5:	85 c9                	test   %ecx,%ecx
4212c7:	0f 49 c8             	cmovns %eax,%ecx
4212ca:	51                   	push   %ecx
4212cb:	68 45 01 00 00       	push   $0x145
4212d0:	68 b8 a7 45 00       	push   $0x45a7b8
4212d5:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4212d8:	e8 f6 24 fe ff       	call   0x4037d3
4212dd:	68 0c a9 45 00       	push   $0x45a90c
4212e2:	eb 43                	jmp    0x421327
4212e4:	ff 76 28             	push   0x28(%esi)
4212e7:	ff 15 38 b2 44 00    	call   *0x44b238
4212ed:	85 c0                	test   %eax,%eax
4212ef:	75 42                	jne    0x421333
4212f1:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4212f7:	0f b7 c8             	movzwl %ax,%ecx
4212fa:	81 c9 00 00 07 80    	or     $0x80070000,%ecx
421300:	85 c0                	test   %eax,%eax
421302:	0f 4e c8             	cmovle %eax,%ecx
421305:	b8 05 40 00 80       	mov    $0x80004005,%eax
42130a:	85 c9                	test   %ecx,%ecx
42130c:	0f 49 c8             	cmovns %eax,%ecx
42130f:	51                   	push   %ecx
421310:	68 3e 01 00 00       	push   $0x13e
421315:	68 b8 a7 45 00       	push   $0x45a7b8
42131a:	89 4d fc             	mov    %ecx,-0x4(%ebp)
42131d:	e8 b1 24 fe ff       	call   0x4037d3
421322:	68 e0 a8 45 00       	push   $0x45a8e0
421327:	ff 75 fc             	push   -0x4(%ebp)
42132a:	e8 00 ee 01 00       	call   0x44012f
42132f:	59                   	pop    %ecx
421330:	59                   	pop    %ecx
421331:	eb 03                	jmp    0x421336
421333:	89 7e 2c             	mov    %edi,0x2c(%esi)
421336:	8b 45 fc             	mov    -0x4(%ebp),%eax
421339:	5f                   	pop    %edi
42133a:	5e                   	pop    %esi
42133b:	8b e5                	mov    %ebp,%esp
42133d:	5d                   	pop    %ebp
42133e:	c2 04 00             	ret    $0x4
421341:	55                   	push   %ebp
421342:	8b ec                	mov    %esp,%ebp
421344:	56                   	push   %esi
421345:	8b 75 08             	mov    0x8(%ebp),%esi
421348:	57                   	push   %edi
421349:	33 ff                	xor    %edi,%edi
42134b:	39 7e 20             	cmp    %edi,0x20(%esi)
42134e:	0f 84 93 00 00 00    	je     0x4213e7
421354:	ff 76 24             	push   0x24(%esi)
421357:	c7 46 2c 05 00 00 00 	movl   $0x5,0x2c(%esi)
42135e:	ff 15 28 b2 44 00    	call   *0x44b228
421364:	85 c0                	test   %eax,%eax
421366:	75 35                	jne    0x42139d
421368:	ff 15 e8 b0 44 00    	call   *0x44b0e8
42136e:	0f b7 f8             	movzwl %ax,%edi
421371:	81 cf 00 00 07 80    	or     $0x80070000,%edi
421377:	85 c0                	test   %eax,%eax
421379:	0f 4e f8             	cmovle %eax,%edi
42137c:	b8 05 40 00 80       	mov    $0x80004005,%eax
421381:	85 ff                	test   %edi,%edi
421383:	0f 49 f8             	cmovns %eax,%edi
421386:	57                   	push   %edi
421387:	68 05 01 00 00       	push   $0x105
42138c:	68 b8 a7 45 00       	push   $0x45a7b8
421391:	e8 3d 24 fe ff       	call   0x4037d3
421396:	68 90 a8 45 00       	push   $0x45a890
42139b:	eb 42                	jmp    0x4213df
42139d:	6a ff                	push   $0xffffffff
42139f:	ff 76 20             	push   0x20(%esi)
4213a2:	ff 15 10 b2 44 00    	call   *0x44b210
4213a8:	85 c0                	test   %eax,%eax
4213aa:	74 3b                	je     0x4213e7
4213ac:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4213b2:	0f b7 f8             	movzwl %ax,%edi
4213b5:	81 cf 00 00 07 80    	or     $0x80070000,%edi
4213bb:	85 c0                	test   %eax,%eax
4213bd:	0f 4e f8             	cmovle %eax,%edi
4213c0:	b8 05 40 00 80       	mov    $0x80004005,%eax
4213c5:	85 ff                	test   %edi,%edi
4213c7:	0f 49 f8             	cmovns %eax,%edi
4213ca:	57                   	push   %edi
4213cb:	68 0b 01 00 00       	push   $0x10b
4213d0:	68 b8 a7 45 00       	push   $0x45a7b8
4213d5:	e8 f9 23 fe ff       	call   0x4037d3
4213da:	68 b8 a8 45 00       	push   $0x45a8b8
4213df:	57                   	push   %edi
4213e0:	e8 4a ed 01 00       	call   0x44012f
4213e5:	59                   	pop    %ecx
4213e6:	59                   	pop    %ecx
4213e7:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
4213eb:	53                   	push   %ebx
4213ec:	8b 1d d4 b0 44 00    	mov    0x44b0d4,%ebx
4213f2:	74 09                	je     0x4213fd
4213f4:	ff 76 20             	push   0x20(%esi)
4213f7:	ff d3                	call   *%ebx
4213f9:	83 66 20 00          	andl   $0x0,0x20(%esi)
4213fd:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
421401:	74 09                	je     0x42140c
421403:	ff 76 24             	push   0x24(%esi)
421406:	ff d3                	call   *%ebx
421408:	83 66 24 00          	andl   $0x0,0x24(%esi)
42140c:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
421410:	74 09                	je     0x42141b
421412:	ff 76 28             	push   0x28(%esi)
421415:	ff d3                	call   *%ebx
421417:	83 66 28 00          	andl   $0x0,0x28(%esi)
42141b:	83 7e 4c 00          	cmpl   $0x0,0x4c(%esi)
42141f:	5b                   	pop    %ebx
421420:	74 08                	je     0x42142a
421422:	ff 76 4c             	push   0x4c(%esi)
421425:	e8 6f 25 fe ff       	call   0x403999
42142a:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
42142e:	74 08                	je     0x421438
421430:	ff 76 1c             	push   0x1c(%esi)
421433:	e8 b7 40 02 00       	call   0x4454ef
421438:	8b c7                	mov    %edi,%eax
42143a:	5f                   	pop    %edi
42143b:	5e                   	pop    %esi
42143c:	5d                   	pop    %ebp
42143d:	c2 04 00             	ret    $0x4
421440:	55                   	push   %ebp
421441:	8b ec                	mov    %esp,%ebp
421443:	8b 4d 08             	mov    0x8(%ebp),%ecx
421446:	8b 45 0c             	mov    0xc(%ebp),%eax
421449:	56                   	push   %esi
42144a:	51                   	push   %ecx
42144b:	c7 41 2c 01 00 00 00 	movl   $0x1,0x2c(%ecx)
421452:	89 41 34             	mov    %eax,0x34(%ecx)
421455:	e8 c0 f0 ff ff       	call   0x42051a
42145a:	8b f0                	mov    %eax,%esi
42145c:	81 fe 04 40 00 80    	cmp    $0x80004004,%esi
421462:	74 19                	je     0x42147d
421464:	81 fe 03 01 07 80    	cmp    $0x80070103,%esi
42146a:	74 11                	je     0x42147d
42146c:	85 f6                	test   %esi,%esi
42146e:	79 0d                	jns    0x42147d
421470:	68 68 a8 45 00       	push   $0x45a868
421475:	56                   	push   %esi
421476:	e8 b4 ec 01 00       	call   0x44012f
42147b:	59                   	pop    %ecx
42147c:	59                   	pop    %ecx
42147d:	8b c6                	mov    %esi,%eax
42147f:	5e                   	pop    %esi
421480:	5d                   	pop    %ebp
421481:	c2 08 00             	ret    $0x8
421484:	55                   	push   %ebp
421485:	8b ec                	mov    %esp,%ebp
421487:	53                   	push   %ebx
421488:	56                   	push   %esi
421489:	57                   	push   %edi
42148a:	8b 7d 08             	mov    0x8(%ebp),%edi
42148d:	33 db                	xor    %ebx,%ebx
42148f:	53                   	push   %ebx
421490:	ff 75 0c             	push   0xc(%ebp)
421493:	83 4f 3c ff          	orl    $0xffffffff,0x3c(%edi)
421497:	8d 47 1c             	lea    0x1c(%edi),%eax
42149a:	50                   	push   %eax
42149b:	e8 05 0d fe ff       	call   0x4021a5
4214a0:	8b f0                	mov    %eax,%esi
4214a2:	85 f6                	test   %esi,%esi
4214a4:	79 0a                	jns    0x4214b0
4214a6:	68 9c a7 45 00       	push   $0x45a79c
4214ab:	e9 ec 00 00 00       	jmp    0x42159c
4214b0:	8b 35 00 b2 44 00    	mov    0x44b200,%esi
4214b6:	53                   	push   %ebx
4214b7:	53                   	push   %ebx
4214b8:	6a 01                	push   $0x1
4214ba:	53                   	push   %ebx
4214bb:	ff d6                	call   *%esi
4214bd:	89 47 24             	mov    %eax,0x24(%edi)
4214c0:	85 c0                	test   %eax,%eax
4214c2:	75 38                	jne    0x4214fc
4214c4:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4214ca:	0f b7 f0             	movzwl %ax,%esi
4214cd:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4214d3:	85 c0                	test   %eax,%eax
4214d5:	0f 4e f0             	cmovle %eax,%esi
4214d8:	b8 05 40 00 80       	mov    $0x80004005,%eax
4214dd:	85 f6                	test   %esi,%esi
4214df:	0f 49 f0             	cmovns %eax,%esi
4214e2:	56                   	push   %esi
4214e3:	68 8c 00 00 00       	push   $0x8c
4214e8:	68 b8 a7 45 00       	push   $0x45a7b8
4214ed:	e8 e1 22 fe ff       	call   0x4037d3
4214f2:	68 c8 a7 45 00       	push   $0x45a7c8
4214f7:	e9 a0 00 00 00       	jmp    0x42159c
4214fc:	53                   	push   %ebx
4214fd:	53                   	push   %ebx
4214fe:	6a 01                	push   $0x1
421500:	53                   	push   %ebx
421501:	ff d6                	call   *%esi
421503:	89 47 28             	mov    %eax,0x28(%edi)
421506:	85 c0                	test   %eax,%eax
421508:	75 35                	jne    0x42153f
42150a:	ff 15 e8 b0 44 00    	call   *0x44b0e8
421510:	0f b7 f0             	movzwl %ax,%esi
421513:	81 ce 00 00 07 80    	or     $0x80070000,%esi
421519:	85 c0                	test   %eax,%eax
42151b:	0f 4e f0             	cmovle %eax,%esi
42151e:	b8 05 40 00 80       	mov    $0x80004005,%eax
421523:	85 f6                	test   %esi,%esi
421525:	0f 49 f0             	cmovns %eax,%esi
421528:	56                   	push   %esi
421529:	68 8f 00 00 00       	push   $0x8f
42152e:	68 b8 a7 45 00       	push   $0x45a7b8
421533:	e8 9b 22 fe ff       	call   0x4037d3
421538:	68 f0 a7 45 00       	push   $0x45a7f0
42153d:	eb 5d                	jmp    0x42159c
42153f:	53                   	push   %ebx
421540:	53                   	push   %ebx
421541:	57                   	push   %edi
421542:	68 43 0e 42 00       	push   $0x420e43
421547:	53                   	push   %ebx
421548:	53                   	push   %ebx
421549:	ff 15 20 b2 44 00    	call   *0x44b220
42154f:	89 47 20             	mov    %eax,0x20(%edi)
421552:	85 c0                	test   %eax,%eax
421554:	75 35                	jne    0x42158b
421556:	ff 15 e8 b0 44 00    	call   *0x44b0e8
42155c:	0f b7 f0             	movzwl %ax,%esi
42155f:	81 ce 00 00 07 80    	or     $0x80070000,%esi
421565:	85 c0                	test   %eax,%eax
421567:	0f 4e f0             	cmovle %eax,%esi
42156a:	b8 05 40 00 80       	mov    $0x80004005,%eax
42156f:	85 f6                	test   %esi,%esi
421571:	0f 49 f0             	cmovns %eax,%esi
421574:	56                   	push   %esi
421575:	68 93 00 00 00       	push   $0x93
42157a:	68 b8 a7 45 00       	push   $0x45a7b8
42157f:	e8 4f 22 fe ff       	call   0x4037d3
421584:	68 1c a8 45 00       	push   $0x45a81c
421589:	eb 11                	jmp    0x42159c
42158b:	57                   	push   %edi
42158c:	e8 93 fc ff ff       	call   0x421224
421591:	8b f0                	mov    %eax,%esi
421593:	85 f6                	test   %esi,%esi
421595:	79 0d                	jns    0x4215a4
421597:	68 40 a8 45 00       	push   $0x45a840
42159c:	56                   	push   %esi
42159d:	e8 8d eb 01 00       	call   0x44012f
4215a2:	59                   	pop    %ecx
4215a3:	59                   	pop    %ecx
4215a4:	5f                   	pop    %edi
4215a5:	8b c6                	mov    %esi,%eax
4215a7:	5e                   	pop    %esi
4215a8:	5b                   	pop    %ebx
4215a9:	5d                   	pop    %ebp
4215aa:	c2 08 00             	ret    $0x8
4215ad:	55                   	push   %ebp
4215ae:	8b ec                	mov    %esp,%ebp
4215b0:	8b 45 08             	mov    0x8(%ebp),%eax
4215b3:	56                   	push   %esi
4215b4:	50                   	push   %eax
4215b5:	c7 40 2c 04 00 00 00 	movl   $0x4,0x2c(%eax)
4215bc:	e8 59 ef ff ff       	call   0x42051a
4215c1:	8b f0                	mov    %eax,%esi
4215c3:	85 f6                	test   %esi,%esi
4215c5:	79 0d                	jns    0x4215d4
4215c7:	68 68 a8 45 00       	push   $0x45a868
4215cc:	56                   	push   %esi
4215cd:	e8 5d eb 01 00       	call   0x44012f
4215d2:	59                   	pop    %ecx
4215d3:	59                   	pop    %ecx
4215d4:	8b c6                	mov    %esi,%eax
4215d6:	5e                   	pop    %esi
4215d7:	5d                   	pop    %ebp
4215d8:	c2 04 00             	ret    $0x4
4215db:	55                   	push   %ebp
4215dc:	8b ec                	mov    %esp,%ebp
4215de:	56                   	push   %esi
4215df:	8b 75 08             	mov    0x8(%ebp),%esi
4215e2:	57                   	push   %edi
4215e3:	56                   	push   %esi
4215e4:	c7 46 2c 03 00 00 00 	movl   $0x3,0x2c(%esi)
4215eb:	e8 2a ef ff ff       	call   0x42051a
4215f0:	8b f8                	mov    %eax,%edi
4215f2:	85 ff                	test   %edi,%edi
4215f4:	79 0f                	jns    0x421605
4215f6:	68 68 a8 45 00       	push   $0x45a868
4215fb:	57                   	push   %edi
4215fc:	e8 2e eb 01 00       	call   0x44012f
421601:	59                   	pop    %ecx
421602:	59                   	pop    %ecx
421603:	eb 1b                	jmp    0x421620
421605:	8b 45 0c             	mov    0xc(%ebp),%eax
421608:	8b 4e 40             	mov    0x40(%esi),%ecx
42160b:	89 08                	mov    %ecx,(%eax)
42160d:	8b 45 10             	mov    0x10(%ebp),%eax
421610:	8b 4e 44             	mov    0x44(%esi),%ecx
421613:	89 08                	mov    %ecx,(%eax)
421615:	33 c0                	xor    %eax,%eax
421617:	89 46 40             	mov    %eax,0x40(%esi)
42161a:	89 46 44             	mov    %eax,0x44(%esi)
42161d:	89 46 48             	mov    %eax,0x48(%esi)
421620:	8b c7                	mov    %edi,%eax
421622:	5f                   	pop    %edi
421623:	5e                   	pop    %esi
421624:	5d                   	pop    %ebp
421625:	c2 0c 00             	ret    $0xc
421628:	55                   	push   %ebp
421629:	8b ec                	mov    %esp,%ebp
42162b:	8b 45 0c             	mov    0xc(%ebp),%eax
42162e:	56                   	push   %esi
42162f:	8b 75 08             	mov    0x8(%ebp),%esi
421632:	57                   	push   %edi
421633:	56                   	push   %esi
421634:	c7 46 2c 02 00 00 00 	movl   $0x2,0x2c(%esi)
42163b:	89 46 38             	mov    %eax,0x38(%esi)
42163e:	e8 d7 ee ff ff       	call   0x42051a
421643:	8b f8                	mov    %eax,%edi
421645:	85 ff                	test   %edi,%edi
421647:	79 0f                	jns    0x421658
421649:	68 68 a8 45 00       	push   $0x45a868
42164e:	57                   	push   %edi
42164f:	e8 db ea 01 00       	call   0x44012f
421654:	59                   	pop    %ecx
421655:	59                   	pop    %ecx
421656:	eb 04                	jmp    0x42165c
421658:	83 66 38 00          	andl   $0x0,0x38(%esi)
42165c:	8b c7                	mov    %edi,%eax
42165e:	5f                   	pop    %edi
42165f:	5e                   	pop    %esi
421660:	5d                   	pop    %ebp
421661:	c2 08 00             	ret    $0x8