40a366:	02 00                	add    (%eax),%al
40a368:	20 00                	and    %al,(%eax)
40a36a:	00 00                	add    %al,(%eax)
40a36c:	0b 00                	or     (%eax),%eax
40a36e:	00 11                	add    %dl,(%ecx)
40a370:	20 cf                	and    %cl,%bh
40a372:	2e d0 1e             	rcrb   $1,%cs:(%esi)
40a375:	28 ff                	sub    %bh,%bh
40a377:	00 00                	add    %al,(%eax)
40a379:	06                   	push   %es
40a37a:	16                   	push   %ss
40a37b:	8c 20                	mov    %fs,(%eax)
40a37d:	00 00                	add    %al,(%eax)
40a37f:	01 28                	add    %ebp,(%eax)
40a381:	53                   	push   %ebx
40a382:	01 00                	add    %eax,(%eax)
40a384:	06                   	push   %es
40a385:	79 20                	jns    0x40a3a7
40a387:	00 00                	add    %al,(%eax)
40a389:	01 71 20             	add    %esi,0x20(%ecx)
40a38c:	00 00                	add    %al,(%eax)
40a38e:	01 2a                	add    %ebp,(%edx)
40a390:	13 30                	adc    (%eax),%esi
40a392:	02 00                	add    (%eax),%al
40a394:	20 00                	and    %al,(%eax)
40a396:	00 00                	add    %al,(%eax)
40a398:	0b 00                	or     (%eax),%eax
40a39a:	00 11                	add    %dl,(%ecx)
40a39c:	20 e4                	and    %ah,%ah
40a39e:	2e d0 1e             	rcrb   $1,%cs:(%esi)
40a3a1:	28 ff                	sub    %bh,%bh
40a3a3:	00 00                	add    %al,(%eax)
40a3a5:	06                   	push   %es
40a3a6:	16                   	push   %ss
40a3a7:	8c 20                	mov    %fs,(%eax)
40a3a9:	00 00                	add    %al,(%eax)
40a3ab:	01 28                	add    %ebp,(%eax)
40a3ad:	53                   	push   %ebx
40a3ae:	01 00                	add    %eax,(%eax)
40a3b0:	06                   	push   %es
40a3b1:	79 20                	jns    0x40a3d3
40a3b3:	00 00                	add    %al,(%eax)
40a3b5:	01 71 20             	add    %esi,0x20(%ecx)
40a3b8:	00 00                	add    %al,(%eax)
40a3ba:	01 2a                	add    %ebp,(%edx)
40a3bc:	13 30                	adc    (%eax),%esi
40a3be:	02 00                	add    (%eax),%al
40a3c0:	20 00                	and    %al,(%eax)
40a3c2:	00 00                	add    %al,(%eax)
40a3c4:	0c 00                	or     $0x0,%al
40a3c6:	00 11                	add    %dl,(%ecx)
40a3c8:	20 9a 2e d0 1e 28    	and    %bl,0x281ed02e(%edx)
40a3ce:	ff 00                	incl   (%eax)
40a3d0:	00 06                	add    %al,(%esi)
40a3d2:	16                   	push   %ss
40a3d3:	8c 4c 00 00          	mov    %cs,0x0(%eax,%eax,1)
40a3d7:	01 28                	add    %ebp,(%eax)
40a3d9:	53                   	push   %ebx
40a3da:	01 00                	add    %eax,(%eax)
40a3dc:	06                   	push   %es
40a3dd:	79 4c                	jns    0x40a42b
40a3df:	00 00                	add    %al,(%eax)
40a3e1:	01 71 4c             	add    %esi,0x4c(%ecx)
40a3e4:	00 00                	add    %al,(%eax)
40a3e6:	01 2a                	add    %ebp,(%edx)
40a3e8:	13 30                	adc    (%eax),%esi
40a3ea:	02 00                	add    (%eax),%al
40a3ec:	24 00                	and    $0x0,%al
40a3ee:	00 00                	add    %al,(%eax)
40a3f0:	0c 00                	or     $0x0,%al
40a3f2:	00 11                	add    %dl,(%ecx)
40a3f4:	20 8b 2e d0 1e 28    	and    %cl,0x281ed02e(%ebx)
40a3fa:	ff 00                	incl   (%eax)
40a3fc:	00 06                	add    %al,(%esi)
40a3fe:	20 a0 0f 00 00 8c    	and    %ah,-0x73fffff1(%eax)
40a404:	4c                   	dec    %esp
40a405:	00 00                	add    %al,(%eax)
40a407:	01 28                	add    %ebp,(%eax)
40a409:	53                   	push   %ebx
40a40a:	01 00                	add    %eax,(%eax)
40a40c:	06                   	push   %es
40a40d:	79 4c                	jns    0x40a45b
40a40f:	00 00                	add    %al,(%eax)
40a411:	01 71 4c             	add    %esi,0x4c(%ecx)
40a414:	00 00                	add    %al,(%eax)
40a416:	01 2a                	add    %ebp,(%edx)
40a418:	13 30                	adc    (%eax),%esi
40a41a:	02 00                	add    (%eax),%al
40a41c:	24 00                	and    $0x0,%al
40a41e:	00 00                	add    %al,(%eax)
40a420:	0c 00                	or     $0x0,%al
40a422:	00 11                	add    %dl,(%ecx)
40a424:	20 bc 2e d0 1e 28 ff 	and    %bh,-0xd7e130(%esi,%ebp,1)
40a42b:	00 00                	add    %al,(%eax)
40a42d:	06                   	push   %es
40a42e:	20 88 13 00 00 8c    	and    %cl,-0x73ffffed(%eax)
40a434:	4c                   	dec    %esp
40a435:	00 00                	add    %al,(%eax)
40a437:	01 28                	add    %ebp,(%eax)
40a439:	53                   	push   %ebx
40a43a:	01 00                	add    %eax,(%eax)
40a43c:	06                   	push   %es
40a43d:	79 4c                	jns    0x40a48b
40a43f:	00 00                	add    %al,(%eax)
40a441:	01 71 4c             	add    %esi,0x4c(%ecx)
40a444:	00 00                	add    %al,(%eax)
40a446:	01 2a                	add    %ebp,(%edx)
40a448:	13 30                	adc    (%eax),%esi
40a44a:	02 00                	add    (%eax),%al
40a44c:	24 00                	and    $0x0,%al
40a44e:	00 00                	add    %al,(%eax)
40a450:	0c 00                	or     $0x0,%al
40a452:	00 11                	add    %dl,(%ecx)
40a454:	20 51 2e             	and    %dl,0x2e(%ecx)
40a457:	d0 1e                	rcrb   $1,(%esi)
40a459:	28 ff                	sub    %bh,%bh
40a45b:	00 00                	add    %al,(%eax)
40a45d:	06                   	push   %es
40a45e:	20 88 13 00 00 8c    	and    %cl,-0x73ffffed(%eax)
40a464:	4c                   	dec    %esp
40a465:	00 00                	add    %al,(%eax)
40a467:	01 28                	add    %ebp,(%eax)
40a469:	53                   	push   %ebx
40a46a:	01 00                	add    %eax,(%eax)
40a46c:	06                   	push   %es
40a46d:	79 4c                	jns    0x40a4bb
40a46f:	00 00                	add    %al,(%eax)
40a471:	01 71 4c             	add    %esi,0x4c(%ecx)
40a474:	00 00                	add    %al,(%eax)
40a476:	01 2a                	add    %ebp,(%edx)
40a478:	13 30                	adc    (%eax),%esi
40a47a:	02 00                	add    (%eax),%al
40a47c:	24 00                	and    $0x0,%al
40a47e:	00 00                	add    %al,(%eax)
40a480:	0c 00                	or     $0x0,%al
40a482:	00 11                	add    %dl,(%ecx)
40a484:	20 47 2e             	and    %al,0x2e(%edi)
40a487:	d0 1e                	rcrb   $1,(%esi)
40a489:	28 ff                	sub    %bh,%bh
40a48b:	00 00                	add    %al,(%eax)
40a48d:	06                   	push   %es
40a48e:	20 30                	and    %dh,(%eax)
40a490:	75 00                	jne    0x40a492
40a492:	00 8c 4c 00 00 01 28 	add    %cl,0x28010000(%esp,%ecx,2)
40a499:	53                   	push   %ebx
40a49a:	01 00                	add    %eax,(%eax)
40a49c:	06                   	push   %es
40a49d:	79 4c                	jns    0x40a4eb
40a49f:	00 00                	add    %al,(%eax)
40a4a1:	01 71 4c             	add    %esi,0x4c(%ecx)
40a4a4:	00 00                	add    %al,(%eax)
40a4a6:	01 2a                	add    %ebp,(%edx)
40a4a8:	13 30                	adc    (%eax),%esi
40a4aa:	02 00                	add    (%eax),%al
40a4ac:	24 00                	and    $0x0,%al
40a4ae:	00 00                	add    %al,(%eax)
40a4b0:	0c 00                	or     $0x0,%al
40a4b2:	00 11                	add    %dl,(%ecx)
40a4b4:	20 7c 2e d0          	and    %bh,-0x30(%esi,%ebp,1)
40a4b8:	1e                   	push   %ds
40a4b9:	28 ff                	sub    %bh,%bh
40a4bb:	00 00                	add    %al,(%eax)
40a4bd:	06                   	push   %es
40a4be:	20 c4                	and    %al,%ah
40a4c0:	09 00                	or     %eax,(%eax)
40a4c2:	00 8c 4c 00 00 01 28 	add    %cl,0x28010000(%esp,%ecx,2)
40a4c9:	53                   	push   %ebx
40a4ca:	01 00                	add    %eax,(%eax)
40a4cc:	06                   	push   %es
40a4cd:	79 4c                	jns    0x40a51b
40a4cf:	00 00                	add    %al,(%eax)
40a4d1:	01 71 4c             	add    %esi,0x4c(%ecx)
40a4d4:	00 00                	add    %al,(%eax)
40a4d6:	01 2a                	add    %ebp,(%edx)
40a4d8:	13 30                	adc    (%eax),%esi
40a4da:	02 00                	add    (%eax),%al
40a4dc:	24 00                	and    $0x0,%al
40a4de:	00 00                	add    %al,(%eax)
40a4e0:	0c 00                	or     $0x0,%al
40a4e2:	00 11                	add    %dl,(%ecx)
40a4e4:	20 11                	and    %dl,(%ecx)
40a4e6:	2e d0 1e             	rcrb   $1,%cs:(%esi)
40a4e9:	28 ff                	sub    %bh,%bh
40a4eb:	00 00                	add    %al,(%eax)
40a4ed:	06                   	push   %es
40a4ee:	20 c4                	and    %al,%ah
40a4f0:	09 00                	or     %eax,(%eax)
40a4f2:	00 8c 4c 00 00 01 28 	add    %cl,0x28010000(%esp,%ecx,2)
40a4f9:	53                   	push   %ebx
40a4fa:	01 00                	add    %eax,(%eax)
40a4fc:	06                   	push   %es
40a4fd:	79 4c                	jns    0x40a54b
40a4ff:	00 00                	add    %al,(%eax)
40a501:	01 71 4c             	add    %esi,0x4c(%ecx)
40a504:	00 00                	add    %al,(%eax)
40a506:	01 2a                	add    %ebp,(%edx)
40a508:	13 30                	adc    (%eax),%esi
40a50a:	02 00                	add    (%eax),%al
40a50c:	24 00                	and    $0x0,%al
40a50e:	00 00                	add    %al,(%eax)
40a510:	0c 00                	or     $0x0,%al
40a512:	00 11                	add    %dl,(%ecx)
40a514:	20 00                	and    %al,(%eax)
40a516:	2e d0 1e             	rcrb   $1,%cs:(%esi)
40a519:	28 ff                	sub    %bh,%bh
40a51b:	00 00                	add    %al,(%eax)
40a51d:	06                   	push   %es
40a51e:	20 40 1f             	and    %al,0x1f(%eax)
40a521:	00 00                	add    %al,(%eax)
40a523:	8c 4c 00 00          	mov    %cs,0x0(%eax,%eax,1)
40a527:	01 28                	add    %ebp,(%eax)
40a529:	53                   	push   %ebx
40a52a:	01 00                	add    %eax,(%eax)
40a52c:	06                   	push   %es
40a52d:	79 4c                	jns    0x40a57b
40a52f:	00 00                	add    %al,(%eax)
40a531:	01 71 4c             	add    %esi,0x4c(%ecx)
40a534:	00 00                	add    %al,(%eax)
40a536:	01 2a                	add    %ebp,(%edx)
40a538:	13 30                	adc    (%eax),%esi
40a53a:	02 00                	add    (%eax),%al
40a53c:	24 00                	and    $0x0,%al
40a53e:	00 00                	add    %al,(%eax)
40a540:	0c 00                	or     $0x0,%al
40a542:	00 11                	add    %dl,(%ecx)
40a544:	20 33                	and    %dh,(%ebx)
40a546:	2e d0 1e             	rcrb   $1,%cs:(%esi)
40a549:	28 ff                	sub    %bh,%bh
40a54b:	00 00                	add    %al,(%eax)
40a54d:	06                   	push   %es
40a54e:	20 ff                	and    %bh,%bh
40a550:	ff 00                	incl   (%eax)
40a552:	00 8c 4c 00 00 01 28 	add    %cl,0x28010000(%esp,%ecx,2)
40a559:	53                   	push   %ebx
40a55a:	01 00                	add    %eax,(%eax)
40a55c:	06                   	push   %es
40a55d:	79 4c                	jns    0x40a5ab
40a55f:	00 00                	add    %al,(%eax)
40a561:	01 71 4c             	add    %esi,0x4c(%ecx)
40a564:	00 00                	add    %al,(%eax)
40a566:	01 2a                	add    %ebp,(%edx)
40a568:	13 30                	adc    (%eax),%esi
40a56a:	02 00                	add    (%eax),%al
40a56c:	24 00                	and    $0x0,%al
40a56e:	00 00                	add    %al,(%eax)
40a570:	0c 00                	or     $0x0,%al
40a572:	00 11                	add    %dl,(%ecx)
40a574:	20 22                	and    %ah,(%edx)
40a576:	2e d0 1e             	rcrb   $1,%cs:(%esi)
40a579:	28 ff                	sub    %bh,%bh
40a57b:	00 00                	add    %al,(%eax)
40a57d:	06                   	push   %es
40a57e:	20 00                	and    %al,(%eax)
40a580:	00 a0 00 8c 4c 00    	add    %ah,0x4c8c00(%eax)
40a586:	00 01                	add    %al,(%ecx)
40a588:	28 53 01             	sub    %dl,0x1(%ebx)
40a58b:	00 06                	add    %al,(%esi)
40a58d:	79 4c                	jns    0x40a5db
40a58f:	00 00                	add    %al,(%eax)
40a591:	01 71 4c             	add    %esi,0x4c(%ecx)
40a594:	00 00                	add    %al,(%eax)
40a596:	01 2a                	add    %ebp,(%edx)
40a598:	13 30                	adc    (%eax),%esi
40a59a:	02 00                	add    (%eax),%al
40a59c:	24 00                	and    $0x0,%al
40a59e:	00 00                	add    %al,(%eax)
40a5a0:	0c 00                	or     $0x0,%al
40a5a2:	00 11                	add    %dl,(%ecx)
40a5a4:	20 d6                	and    %dl,%dh
40a5a6:	2f                   	das
40a5a7:	d0 1e                	rcrb   $1,(%esi)
40a5a9:	28 ff                	sub    %bh,%bh
40a5ab:	00 00                	add    %al,(%eax)
40a5ad:	06                   	push   %es
40a5ae:	20 00                	and    %al,(%eax)
40a5b0:	00 a0 00 8c 4c 00    	add    %ah,0x4c8c00(%eax)
40a5b6:	00 01                	add    %al,(%ecx)
40a5b8:	28 53 01             	sub    %dl,0x1(%ebx)
40a5bb:	00 06                	add    %al,(%esi)
40a5bd:	79 4c                	jns    0x40a60b
40a5bf:	00 00                	add    %al,(%eax)
40a5c1:	01 71 4c             	add    %esi,0x4c(%ecx)
40a5c4:	00 00                	add    %al,(%eax)
40a5c6:	01 2a                	add    %ebp,(%edx)
40a5c8:	13 30                	adc    (%eax),%esi
40a5ca:	02 00                	add    (%eax),%al
40a5cc:	20 00                	and    %al,(%eax)
40a5ce:	00 00                	add    %al,(%eax)
40a5d0:	0b 00                	or     (%eax),%eax
40a5d2:	00 11                	add    %dl,(%ecx)
40a5d4:	20 c8                	and    %cl,%al
40a5d6:	2f                   	das
40a5d7:	d0 1e                	rcrb   $1,(%esi)
40a5d9:	28 ff                	sub    %bh,%bh
40a5db:	00 00                	add    %al,(%eax)
40a5dd:	06                   	push   %es
40a5de:	16                   	push   %ss
40a5df:	8c 20                	mov    %fs,(%eax)
40a5e1:	00 00                	add    %al,(%eax)
40a5e3:	01 28                	add    %ebp,(%eax)
40a5e5:	53                   	push   %ebx
40a5e6:	01 00                	add    %eax,(%eax)
40a5e8:	06                   	push   %es
40a5e9:	79 20                	jns    0x40a60b
40a5eb:	00 00                	add    %al,(%eax)
40a5ed:	01 71 20             	add    %esi,0x20(%ecx)
40a5f0:	00 00                	add    %al,(%eax)
40a5f2:	01 2a                	add    %ebp,(%edx)
40a5f4:	13 30                	adc    (%eax),%esi
40a5f6:	02 00                	add    (%eax),%al
40a5f8:	1a 00                	sbb    (%eax),%al
40a5fa:	00 00                	add    %al,(%eax)
40a5fc:	0e                   	push   %cs
40a5fd:	00 00                	add    %al,(%eax)
40a5ff:	11 20                	adc    %esp,(%eax)
40a601:	e3 2f                	jecxz  0x40a632
40a603:	d0 1e                	rcrb   $1,(%esi)
40a605:	28 ff                	sub    %bh,%bh
40a607:	00 00                	add    %al,(%eax)
40a609:	06                   	push   %es
40a60a:	7e 7f                	jle    0x40a68b
40a60c:	00 00                	add    %al,(%eax)
40a60e:	0a 28                	or     (%eax),%ch
40a610:	53                   	push   %ebx
40a611:	01 00                	add    %eax,(%eax)
40a613:	06                   	push   %es
40a614:	74 ab                	je     0x40a5c1
40a616:	00 00                	add    %al,(%eax)
40a618:	01 2a                	add    %ebp,(%edx)
40a61a:	00 00                	add    %al,(%eax)
40a61c:	13 30                	adc    (%eax),%esi
40a61e:	02 00                	add    (%eax),%al
40a620:	1a 00                	sbb    (%eax),%al
40a622:	00 00                	add    %al,(%eax)
40a624:	0e                   	push   %cs
40a625:	00 00                	add    %al,(%eax)
40a627:	11 20                	adc    %esp,(%eax)
40a629:	98                   	cwtl
40a62a:	2f                   	das
40a62b:	d0 1e                	rcrb   $1,(%esi)
40a62d:	28 ff                	sub    %bh,%bh
40a62f:	00 00                	add    %al,(%eax)
40a631:	06                   	push   %es
40a632:	7e 7f                	jle    0x40a6b3
40a634:	00 00                	add    %al,(%eax)
40a636:	0a 28                	or     (%eax),%ch
40a638:	53                   	push   %ebx
40a639:	01 00                	add    %eax,(%eax)
40a63b:	06                   	push   %es
40a63c:	74 ab                	je     0x40a5e9