41c216:	8d 86 58 01 00 00    	lea    0x158(%esi),%eax
41c21c:	50                   	push   %eax
41c21d:	6a 20                	push   $0x20
41c21f:	57                   	push   %edi
41c220:	8d 45 ec             	lea    -0x14(%ebp),%eax
41c223:	6a 02                	push   $0x2
41c225:	50                   	push   %eax
41c226:	e8 4c c3 ff ff       	call   0x418577
41c22b:	0b d8                	or     %eax,%ebx
41c22d:	8d 86 5c 01 00 00    	lea    0x15c(%esi),%eax
41c233:	50                   	push   %eax
41c234:	68 03 10 00 00       	push   $0x1003
41c239:	57                   	push   %edi
41c23a:	8d 45 ec             	lea    -0x14(%ebp),%eax
41c23d:	6a 02                	push   $0x2
41c23f:	50                   	push   %eax
41c240:	e8 32 c3 ff ff       	call   0x418577
41c245:	83 c4 3c             	add    $0x3c,%esp
41c248:	0b c3                	or     %ebx,%eax
41c24a:	f7 d8                	neg    %eax
41c24c:	1a c0                	sbb    %al,%al
41c24e:	5f                   	pop    %edi
41c24f:	5e                   	pop    %esi
41c250:	fe c0                	inc    %al
41c252:	5b                   	pop    %ebx
41c253:	c9                   	leave
41c254:	c3                   	ret
41c255:	8b ff                	mov    %edi,%edi
41c257:	55                   	push   %ebp
41c258:	8b ec                	mov    %esp,%ebp
41c25a:	56                   	push   %esi
41c25b:	8b 75 08             	mov    0x8(%ebp),%esi
41c25e:	85 f6                	test   %esi,%esi
41c260:	0f 84 d0 00 00 00    	je     0x41c336
41c266:	6a 07                	push   $0x7
41c268:	56                   	push   %esi
41c269:	e8 33 fd ff ff       	call   0x41bfa1
41c26e:	8d 46 1c             	lea    0x1c(%esi),%eax
41c271:	6a 07                	push   $0x7
41c273:	50                   	push   %eax
41c274:	e8 28 fd ff ff       	call   0x41bfa1
41c279:	8d 46 38             	lea    0x38(%esi),%eax
41c27c:	6a 0c                	push   $0xc
41c27e:	50                   	push   %eax
41c27f:	e8 1d fd ff ff       	call   0x41bfa1
41c284:	8d 46 68             	lea    0x68(%esi),%eax
41c287:	6a 0c                	push   $0xc
41c289:	50                   	push   %eax
41c28a:	e8 12 fd ff ff       	call   0x41bfa1
41c28f:	8d 86 98 00 00 00    	lea    0x98(%esi),%eax
41c295:	6a 02                	push   $0x2
41c297:	50                   	push   %eax
41c298:	e8 04 fd ff ff       	call   0x41bfa1
41c29d:	ff b6 a0 00 00 00    	push   0xa0(%esi)
41c2a3:	e8 63 6e ff ff       	call   0x41310b
41c2a8:	ff b6 a4 00 00 00    	push   0xa4(%esi)
41c2ae:	e8 58 6e ff ff       	call   0x41310b
41c2b3:	ff b6 a8 00 00 00    	push   0xa8(%esi)
41c2b9:	e8 4d 6e ff ff       	call   0x41310b
41c2be:	8d 86 b4 00 00 00    	lea    0xb4(%esi),%eax
41c2c4:	6a 07                	push   $0x7
41c2c6:	50                   	push   %eax
41c2c7:	e8 d5 fc ff ff       	call   0x41bfa1
41c2cc:	8d 86 d0 00 00 00    	lea    0xd0(%esi),%eax
41c2d2:	6a 07                	push   $0x7
41c2d4:	50                   	push   %eax
41c2d5:	e8 c7 fc ff ff       	call   0x41bfa1
41c2da:	83 c4 44             	add    $0x44,%esp
41c2dd:	8d 86 ec 00 00 00    	lea    0xec(%esi),%eax
41c2e3:	6a 0c                	push   $0xc
41c2e5:	50                   	push   %eax
41c2e6:	e8 b6 fc ff ff       	call   0x41bfa1
41c2eb:	8d 86 1c 01 00 00    	lea    0x11c(%esi),%eax
41c2f1:	6a 0c                	push   $0xc
41c2f3:	50                   	push   %eax
41c2f4:	e8 a8 fc ff ff       	call   0x41bfa1
41c2f9:	8d 86 4c 01 00 00    	lea    0x14c(%esi),%eax
41c2ff:	6a 02                	push   $0x2
41c301:	50                   	push   %eax
41c302:	e8 9a fc ff ff       	call   0x41bfa1
41c307:	ff b6 54 01 00 00    	push   0x154(%esi)
41c30d:	e8 f9 6d ff ff       	call   0x41310b
41c312:	ff b6 58 01 00 00    	push   0x158(%esi)
41c318:	e8 ee 6d ff ff       	call   0x41310b
41c31d:	ff b6 5c 01 00 00    	push   0x15c(%esi)
41c323:	e8 e3 6d ff ff       	call   0x41310b
41c328:	ff b6 60 01 00 00    	push   0x160(%esi)
41c32e:	e8 d8 6d ff ff       	call   0x41310b
41c333:	83 c4 28             	add    $0x28,%esp
41c336:	5e                   	pop    %esi
41c337:	5d                   	pop    %ebp
41c338:	c3                   	ret
41c339:	8b ff                	mov    %edi,%edi
41c33b:	55                   	push   %ebp
41c33c:	8b ec                	mov    %esp,%ebp
41c33e:	53                   	push   %ebx
41c33f:	8b 5d 08             	mov    0x8(%ebp),%ebx
41c342:	56                   	push   %esi
41c343:	57                   	push   %edi
41c344:	33 ff                	xor    %edi,%edi
41c346:	39 bb b4 00 00 00    	cmp    %edi,0xb4(%ebx)
41c34c:	75 07                	jne    0x41c355
41c34e:	be 80 7d 42 00       	mov    $0x427d80,%esi
41c353:	eb 46                	jmp    0x41c39b
41c355:	68 64 01 00 00       	push   $0x164
41c35a:	6a 01                	push   $0x1
41c35c:	e8 4d 6d ff ff       	call   0x4130ae
41c361:	8b f0                	mov    %eax,%esi
41c363:	59                   	pop    %ecx
41c364:	59                   	pop    %ecx
41c365:	85 f6                	test   %esi,%esi
41c367:	74 16                	je     0x41c37f
41c369:	53                   	push   %ebx
41c36a:	56                   	push   %esi
41c36b:	e8 69 fc ff ff       	call   0x41bfd9
41c370:	59                   	pop    %ecx
41c371:	59                   	pop    %ecx
41c372:	84 c0                	test   %al,%al
41c374:	75 14                	jne    0x41c38a
41c376:	56                   	push   %esi
41c377:	e8 d9 fe ff ff       	call   0x41c255
41c37c:	59                   	pop    %ecx
41c37d:	8b fe                	mov    %esi,%edi
41c37f:	57                   	push   %edi
41c380:	e8 86 6d ff ff       	call   0x41310b
41c385:	33 c0                	xor    %eax,%eax
41c387:	40                   	inc    %eax
41c388:	eb 24                	jmp    0x41c3ae
41c38a:	57                   	push   %edi
41c38b:	c7 86 b0 00 00 00 01 	movl   $0x1,0xb0(%esi)
41c392:	00 00 00
41c395:	e8 71 6d ff ff       	call   0x41310b
41c39a:	59                   	pop    %ecx
41c39b:	ff b3 9c 00 00 00    	push   0x9c(%ebx)
41c3a1:	e8 c6 03 00 00       	call   0x41c76c
41c3a6:	89 b3 9c 00 00 00    	mov    %esi,0x9c(%ebx)
41c3ac:	33 c0                	xor    %eax,%eax
41c3ae:	59                   	pop    %ecx
41c3af:	5f                   	pop    %edi
41c3b0:	5e                   	pop    %esi
41c3b1:	5b                   	pop    %ebx
41c3b2:	5d                   	pop    %ebp
41c3b3:	c3                   	ret
41c3b4:	8b ff                	mov    %edi,%edi
41c3b6:	55                   	push   %ebp
41c3b7:	8b ec                	mov    %esp,%ebp
41c3b9:	51                   	push   %ecx
41c3ba:	8b 4d 08             	mov    0x8(%ebp),%ecx
41c3bd:	53                   	push   %ebx
41c3be:	56                   	push   %esi
41c3bf:	8b 75 14             	mov    0x14(%ebp),%esi
41c3c2:	57                   	push   %edi
41c3c3:	85 f6                	test   %esi,%esi
41c3c5:	75 0d                	jne    0x41c3d4
41c3c7:	85 c9                	test   %ecx,%ecx
41c3c9:	75 0d                	jne    0x41c3d8
41c3cb:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
41c3ce:	75 1f                	jne    0x41c3ef
41c3d0:	33 c0                	xor    %eax,%eax
41c3d2:	eb 2c                	jmp    0x41c400
41c3d4:	85 c9                	test   %ecx,%ecx
41c3d6:	74 17                	je     0x41c3ef
41c3d8:	8b 45 0c             	mov    0xc(%ebp),%eax
41c3db:	85 c0                	test   %eax,%eax
41c3dd:	74 10                	je     0x41c3ef
41c3df:	8b 5d 10             	mov    0x10(%ebp),%ebx
41c3e2:	85 f6                	test   %esi,%esi
41c3e4:	74 1f                	je     0x41c405
41c3e6:	85 db                	test   %ebx,%ebx
41c3e8:	75 1b                	jne    0x41c405
41c3ea:	33 c0                	xor    %eax,%eax
41c3ec:	66 89 01             	mov    %ax,(%ecx)
41c3ef:	e8 07 2a ff ff       	call   0x40edfb
41c3f4:	6a 16                	push   $0x16
41c3f6:	5e                   	pop    %esi
41c3f7:	89 30                	mov    %esi,(%eax)
41c3f9:	e8 83 0c ff ff       	call   0x40d081
41c3fe:	8b c6                	mov    %esi,%eax
41c400:	5f                   	pop    %edi
41c401:	5e                   	pop    %esi
41c402:	5b                   	pop    %ebx
41c403:	c9                   	leave
41c404:	c3                   	ret
41c405:	8b f8                	mov    %eax,%edi
41c407:	8b d1                	mov    %ecx,%edx
41c409:	8b c6                	mov    %esi,%eax
41c40b:	66 83 3a 00          	cmpw   $0x0,(%edx)
41c40f:	74 08                	je     0x41c419
41c411:	83 c2 02             	add    $0x2,%edx
41c414:	83 ef 01             	sub    $0x1,%edi
41c417:	75 f2                	jne    0x41c40b
41c419:	85 ff                	test   %edi,%edi
41c41b:	74 cd                	je     0x41c3ea
41c41d:	83 fe ff             	cmp    $0xffffffff,%esi
41c420:	75 18                	jne    0x41c43a
41c422:	2b da                	sub    %edx,%ebx
41c424:	0f b7 04 13          	movzwl (%ebx,%edx,1),%eax
41c428:	66 89 02             	mov    %ax,(%edx)
41c42b:	8d 52 02             	lea    0x2(%edx),%edx
41c42e:	66 85 c0             	test   %ax,%ax
41c431:	74 38                	je     0x41c46b
41c433:	83 ef 01             	sub    $0x1,%edi
41c436:	75 ec                	jne    0x41c424
41c438:	eb 31                	jmp    0x41c46b
41c43a:	85 f6                	test   %esi,%esi
41c43c:	74 26                	je     0x41c464
41c43e:	8b ce                	mov    %esi,%ecx
41c440:	0f b7 03             	movzwl (%ebx),%eax
41c443:	8d 5b 02             	lea    0x2(%ebx),%ebx
41c446:	66 89 02             	mov    %ax,(%edx)
41c449:	83 c2 02             	add    $0x2,%edx
41c44c:	66 85 c0             	test   %ax,%ax
41c44f:	74 0a                	je     0x41c45b
41c451:	83 ef 01             	sub    $0x1,%edi
41c454:	74 05                	je     0x41c45b
41c456:	83 e9 01             	sub    $0x1,%ecx
41c459:	75 e5                	jne    0x41c440
41c45b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41c45e:	8b 4d 08             	mov    0x8(%ebp),%ecx
41c461:	8b 45 fc             	mov    -0x4(%ebp),%eax
41c464:	85 c0                	test   %eax,%eax
41c466:	75 03                	jne    0x41c46b
41c468:	66 89 02             	mov    %ax,(%edx)
41c46b:	85 ff                	test   %edi,%edi
41c46d:	0f 85 5d ff ff ff    	jne    0x41c3d0
41c473:	83 fe ff             	cmp    $0xffffffff,%esi
41c476:	75 12                	jne    0x41c48a
41c478:	8b 45 0c             	mov    0xc(%ebp),%eax
41c47b:	33 d2                	xor    %edx,%edx
41c47d:	6a 50                	push   $0x50
41c47f:	66 89 54 41 fe       	mov    %dx,-0x2(%ecx,%eax,2)
41c484:	58                   	pop    %eax
41c485:	e9 76 ff ff ff       	jmp    0x41c400
41c48a:	33 c0                	xor    %eax,%eax
41c48c:	66 89 01             	mov    %ax,(%ecx)
41c48f:	e8 67 29 ff ff       	call   0x40edfb
41c494:	6a 22                	push   $0x22
41c496:	e9 5b ff ff ff       	jmp    0x41c3f6
41c49b:	8b ff                	mov    %edi,%edi
41c49d:	55                   	push   %ebp
41c49e:	8b ec                	mov    %esp,%ebp
41c4a0:	5d                   	pop    %ebp
41c4a1:	e9 0e ff ff ff       	jmp    0x41c3b4
41c4a6:	8b ff                	mov    %edi,%edi
41c4a8:	55                   	push   %ebp
41c4a9:	8b ec                	mov    %esp,%ebp
41c4ab:	51                   	push   %ecx
41c4ac:	51                   	push   %ecx
41c4ad:	8b 55 08             	mov    0x8(%ebp),%edx
41c4b0:	33 c0                	xor    %eax,%eax
41c4b2:	53                   	push   %ebx
41c4b3:	56                   	push   %esi
41c4b4:	57                   	push   %edi
41c4b5:	8b ca                	mov    %edx,%ecx
41c4b7:	66 39 02             	cmp    %ax,(%edx)
41c4ba:	74 38                	je     0x41c4f4
41c4bc:	8b 75 0c             	mov    0xc(%ebp),%esi
41c4bf:	0f b7 1e             	movzwl (%esi),%ebx
41c4c2:	8b fe                	mov    %esi,%edi
41c4c4:	66 85 db             	test   %bx,%bx
41c4c7:	74 23                	je     0x41c4ec
41c4c9:	0f b7 01             	movzwl (%ecx),%eax
41c4cc:	89 45 fc             	mov    %eax,-0x4(%ebp)
41c4cf:	8b c3                	mov    %ebx,%eax
41c4d1:	66 39 45 fc          	cmp    %ax,-0x4(%ebp)
41c4d5:	74 1d                	je     0x41c4f4
41c4d7:	83 c7 02             	add    $0x2,%edi
41c4da:	0f b7 07             	movzwl (%edi),%eax
41c4dd:	8b d0                	mov    %eax,%edx
41c4df:	89 55 f8             	mov    %edx,-0x8(%ebp)
41c4e2:	8b 55 08             	mov    0x8(%ebp),%edx
41c4e5:	66 85 c0             	test   %ax,%ax
41c4e8:	75 e7                	jne    0x41c4d1
41c4ea:	33 c0                	xor    %eax,%eax
41c4ec:	83 c1 02             	add    $0x2,%ecx
41c4ef:	66 39 01             	cmp    %ax,(%ecx)
41c4f2:	75 ce                	jne    0x41c4c2
41c4f4:	5f                   	pop    %edi
41c4f5:	2b ca                	sub    %edx,%ecx
41c4f7:	d1 f9                	sar    $1,%ecx
41c4f9:	5e                   	pop    %esi
41c4fa:	8b c1                	mov    %ecx,%eax
41c4fc:	5b                   	pop    %ebx
41c4fd:	c9                   	leave
41c4fe:	c3                   	ret
41c4ff:	8b ff                	mov    %edi,%edi
41c501:	55                   	push   %ebp
41c502:	8b ec                	mov    %esp,%ebp
41c504:	8b 4d 08             	mov    0x8(%ebp),%ecx
41c507:	33 c0                	xor    %eax,%eax
41c509:	53                   	push   %ebx
41c50a:	56                   	push   %esi
41c50b:	57                   	push   %edi
41c50c:	66 39 01             	cmp    %ax,(%ecx)
41c50f:	74 31                	je     0x41c542
41c511:	8b 55 0c             	mov    0xc(%ebp),%edx
41c514:	0f b7 3a             	movzwl (%edx),%edi
41c517:	8b f2                	mov    %edx,%esi
41c519:	66 85 ff             	test   %di,%di
41c51c:	74 1c                	je     0x41c53a
41c51e:	0f b7 01             	movzwl (%ecx),%eax
41c521:	8b df                	mov    %edi,%ebx
41c523:	66 3b d8             	cmp    %ax,%bx
41c526:	74 21                	je     0x41c549
41c528:	83 c6 02             	add    $0x2,%esi
41c52b:	0f b7 06             	movzwl (%esi),%eax
41c52e:	8b d8                	mov    %eax,%ebx
41c530:	66 85 c0             	test   %ax,%ax
41c533:	0f b7 01             	movzwl (%ecx),%eax
41c536:	75 eb                	jne    0x41c523
41c538:	33 c0                	xor    %eax,%eax
41c53a:	83 c1 02             	add    $0x2,%ecx
41c53d:	66 39 01             	cmp    %ax,(%ecx)
41c540:	75 d5                	jne    0x41c517
41c542:	33 c0                	xor    %eax,%eax
41c544:	5f                   	pop    %edi
41c545:	5e                   	pop    %esi
41c546:	5b                   	pop    %ebx
41c547:	5d                   	pop    %ebp
41c548:	c3                   	ret
41c549:	8b c1                	mov    %ecx,%eax
41c54b:	eb f7                	jmp    0x41c544
41c54d:	8b ff                	mov    %edi,%edi
41c54f:	55                   	push   %ebp
41c550:	8b ec                	mov    %esp,%ebp
41c552:	8b 45 08             	mov    0x8(%ebp),%eax
41c555:	f0 ff 40 0c          	lock incl 0xc(%eax)
41c559:	8b 48 7c             	mov    0x7c(%eax),%ecx
41c55c:	85 c9                	test   %ecx,%ecx
41c55e:	74 03                	je     0x41c563
41c560:	f0 ff 01             	lock incl (%ecx)
41c563:	8b 88 84 00 00 00    	mov    0x84(%eax),%ecx
41c569:	85 c9                	test   %ecx,%ecx
41c56b:	74 03                	je     0x41c570
41c56d:	f0 ff 01             	lock incl (%ecx)
41c570:	8b 88 80 00 00 00    	mov    0x80(%eax),%ecx
41c576:	85 c9                	test   %ecx,%ecx
41c578:	74 03                	je     0x41c57d
41c57a:	f0 ff 01             	lock incl (%ecx)
41c57d:	8b 88 8c 00 00 00    	mov    0x8c(%eax),%ecx
41c583:	85 c9                	test   %ecx,%ecx
41c585:	74 03                	je     0x41c58a
41c587:	f0 ff 01             	lock incl (%ecx)
41c58a:	56                   	push   %esi
41c58b:	6a 06                	push   $0x6
41c58d:	8d 48 28             	lea    0x28(%eax),%ecx
41c590:	5e                   	pop    %esi
41c591:	81 79 f8 90 32 43 00 	cmpl   $0x433290,-0x8(%ecx)
41c598:	74 09                	je     0x41c5a3
41c59a:	8b 11                	mov    (%ecx),%edx