43e206:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43e20a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43e20d:	50                   	push   %eax
43e20e:	e8 a9 aa fc ff       	call   0x408cbc
43e213:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43e217:	59                   	pop    %ecx
43e218:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43e21b:	89 45 f0             	mov    %eax,-0x10(%ebp)
43e21e:	e8 c4 11 fd ff       	call   0x40f3e7
43e223:	8b 75 20             	mov    0x20(%ebp),%esi
43e226:	33 d2                	xor    %edx,%edx
43e228:	0f be 4d 28          	movsbl 0x28(%ebp),%ecx
43e22c:	83 c1 bf             	add    $0xffffffbf,%ecx
43e22f:	89 55 e8             	mov    %edx,-0x18(%ebp)
43e232:	89 16                	mov    %edx,(%esi)
43e234:	83 f9 38             	cmp    $0x38,%ecx
43e237:	0f 87 8d 02 00 00    	ja     0x43e4ca
43e23d:	0f b6 81 56 e5 43 00 	movzbl 0x43e556(%ecx),%eax
43e244:	ff 24 85 fa e4 43 00 	jmp    *0x43e4fa(,%eax,4)
43e24b:	ff 75 24             	push   0x24(%ebp)
43e24e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43e251:	8b cf                	mov    %edi,%ecx
43e253:	56                   	push   %esi
43e254:	53                   	push   %ebx
43e255:	ff 75 18             	push   0x18(%ebp)
43e258:	ff 75 14             	push   0x14(%ebp)
43e25b:	ff 75 10             	push   0x10(%ebp)
43e25e:	ff 75 0c             	push   0xc(%ebp)
43e261:	50                   	push   %eax
43e262:	e8 43 0e 00 00       	call   0x43f0aa
43e267:	8b 08                	mov    (%eax),%ecx
43e269:	89 4d 0c             	mov    %ecx,0xc(%ebp)
43e26c:	8b 40 04             	mov    0x4(%eax),%eax
43e26f:	89 45 10             	mov    %eax,0x10(%ebp)
43e272:	e9 59 02 00 00       	jmp    0x43e4d0
43e277:	ff 75 24             	push   0x24(%ebp)
43e27a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43e27d:	8b cf                	mov    %edi,%ecx
43e27f:	56                   	push   %esi
43e280:	53                   	push   %ebx
43e281:	ff 75 18             	push   0x18(%ebp)
43e284:	ff 75 14             	push   0x14(%ebp)
43e287:	ff 75 10             	push   0x10(%ebp)
43e28a:	ff 75 0c             	push   0xc(%ebp)
43e28d:	50                   	push   %eax
43e28e:	e8 df 0d 00 00       	call   0x43f072
43e293:	eb d2                	jmp    0x43e267
43e295:	68 d8 a9 49 00       	push   $0x49a9d8
43e29a:	ff 75 24             	push   0x24(%ebp)
43e29d:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43e2a0:	8b cf                	mov    %edi,%ecx
43e2a2:	56                   	push   %esi
43e2a3:	53                   	push   %ebx
43e2a4:	ff 75 18             	push   0x18(%ebp)
43e2a7:	ff 75 14             	push   0x14(%ebp)
43e2aa:	ff 75 10             	push   0x10(%ebp)
43e2ad:	ff 75 0c             	push   0xc(%ebp)
43e2b0:	50                   	push   %eax
43e2b1:	e8 11 e5 ff ff       	call   0x43c7c7
43e2b6:	eb af                	jmp    0x43e267
43e2b8:	ff 75 f0             	push   -0x10(%ebp)
43e2bb:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e2be:	50                   	push   %eax
43e2bf:	6a 63                	push   $0x63
43e2c1:	52                   	push   %edx
43e2c2:	8d 45 14             	lea    0x14(%ebp),%eax
43e2c5:	50                   	push   %eax
43e2c6:	8d 45 0c             	lea    0xc(%ebp),%eax
43e2c9:	50                   	push   %eax
43e2ca:	57                   	push   %edi
43e2cb:	e8 27 e6 ff ff       	call   0x43c8f7
43e2d0:	8b 0e                	mov    (%esi),%ecx
43e2d2:	83 c4 1c             	add    $0x1c,%esp
43e2d5:	0b c8                	or     %eax,%ecx
43e2d7:	89 0e                	mov    %ecx,(%esi)
43e2d9:	f6 c1 02             	test   $0x2,%cl
43e2dc:	0f 85 ee 01 00 00    	jne    0x43e4d0
43e2e2:	8b 45 e8             	mov    -0x18(%ebp),%eax
43e2e5:	83 c0 ed             	add    $0xffffffed,%eax
43e2e8:	6b c8 64             	imul   $0x64,%eax,%ecx
43e2eb:	8b 45 24             	mov    0x24(%ebp),%eax
43e2ee:	89 48 14             	mov    %ecx,0x14(%eax)
43e2f1:	e9 da 01 00 00       	jmp    0x43e4d0
43e2f6:	ff 75 f0             	push   -0x10(%ebp)
43e2f9:	8b 45 24             	mov    0x24(%ebp),%eax
43e2fc:	83 c0 0c             	add    $0xc,%eax
43e2ff:	50                   	push   %eax
43e300:	6a 1f                	push   $0x1f
43e302:	6a 01                	push   $0x1
43e304:	8d 45 14             	lea    0x14(%ebp),%eax
43e307:	50                   	push   %eax
43e308:	8d 45 0c             	lea    0xc(%ebp),%eax
43e30b:	50                   	push   %eax
43e30c:	57                   	push   %edi
43e30d:	e8 e5 e5 ff ff       	call   0x43c8f7
43e312:	83 c4 1c             	add    $0x1c,%esp
43e315:	09 06                	or     %eax,(%esi)
43e317:	e9 b4 01 00 00       	jmp    0x43e4d0
43e31c:	68 f0 a9 49 00       	push   $0x49a9f0
43e321:	e9 74 ff ff ff       	jmp    0x43e29a
43e326:	ff 75 f0             	push   -0x10(%ebp)
43e329:	8b 45 24             	mov    0x24(%ebp),%eax
43e32c:	83 c0 08             	add    $0x8,%eax
43e32f:	50                   	push   %eax
43e330:	6a 17                	push   $0x17
43e332:	52                   	push   %edx
43e333:	eb cf                	jmp    0x43e304
43e335:	ff 75 f0             	push   -0x10(%ebp)
43e338:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e33b:	50                   	push   %eax
43e33c:	6a 0c                	push   $0xc
43e33e:	6a 01                	push   $0x1
43e340:	8d 45 14             	lea    0x14(%ebp),%eax
43e343:	50                   	push   %eax
43e344:	8d 45 0c             	lea    0xc(%ebp),%eax
43e347:	50                   	push   %eax
43e348:	57                   	push   %edi
43e349:	e8 a9 e5 ff ff       	call   0x43c8f7
43e34e:	8b 0e                	mov    (%esi),%ecx
43e350:	83 c4 1c             	add    $0x1c,%esp
43e353:	0b c8                	or     %eax,%ecx
43e355:	89 0e                	mov    %ecx,(%esi)
43e357:	f6 c1 02             	test   $0x2,%cl
43e35a:	0f 85 70 01 00 00    	jne    0x43e4d0
43e360:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43e363:	8b 45 24             	mov    0x24(%ebp),%eax
43e366:	83 e9 0c             	sub    $0xc,%ecx
43e369:	f7 d9                	neg    %ecx
43e36b:	1b c9                	sbb    %ecx,%ecx
43e36d:	23 4d e8             	and    -0x18(%ebp),%ecx
43e370:	89 48 08             	mov    %ecx,0x8(%eax)
43e373:	e9 58 01 00 00       	jmp    0x43e4d0
43e378:	ff 75 f0             	push   -0x10(%ebp)
43e37b:	8b 45 24             	mov    0x24(%ebp),%eax
43e37e:	83 c0 1c             	add    $0x1c,%eax
43e381:	50                   	push   %eax
43e382:	68 6e 01 00 00       	push   $0x16e
43e387:	e9 76 ff ff ff       	jmp    0x43e302
43e38c:	ff 75 f0             	push   -0x10(%ebp)
43e38f:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e392:	50                   	push   %eax
43e393:	6a 0c                	push   $0xc
43e395:	6a 01                	push   $0x1
43e397:	8d 45 14             	lea    0x14(%ebp),%eax
43e39a:	50                   	push   %eax
43e39b:	8d 45 0c             	lea    0xc(%ebp),%eax
43e39e:	50                   	push   %eax
43e39f:	57                   	push   %edi
43e3a0:	e8 52 e5 ff ff       	call   0x43c8f7
43e3a5:	8b 0e                	mov    (%esi),%ecx
43e3a7:	83 c4 1c             	add    $0x1c,%esp
43e3aa:	0b c8                	or     %eax,%ecx
43e3ac:	89 0e                	mov    %ecx,(%esi)
43e3ae:	f6 c1 02             	test   $0x2,%cl
43e3b1:	0f 85 19 01 00 00    	jne    0x43e4d0
43e3b7:	8b 45 24             	mov    0x24(%ebp),%eax
43e3ba:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43e3bd:	49                   	dec    %ecx
43e3be:	89 48 10             	mov    %ecx,0x10(%eax)
43e3c1:	e9 0a 01 00 00       	jmp    0x43e4d0
43e3c6:	ff 75 f0             	push   -0x10(%ebp)
43e3c9:	8b 45 24             	mov    0x24(%ebp),%eax
43e3cc:	83 c0 04             	add    $0x4,%eax
43e3cf:	50                   	push   %eax
43e3d0:	6a 3b                	push   $0x3b
43e3d2:	e9 5b ff ff ff       	jmp    0x43e332
43e3d7:	68 00 aa 49 00       	push   $0x49aa00
43e3dc:	e9 b9 fe ff ff       	jmp    0x43e29a
43e3e1:	68 04 aa 49 00       	push   $0x49aa04
43e3e6:	52                   	push   %edx
43e3e7:	8d 45 14             	lea    0x14(%ebp),%eax
43e3ea:	50                   	push   %eax
43e3eb:	8d 45 0c             	lea    0xc(%ebp),%eax
43e3ee:	50                   	push   %eax
43e3ef:	e8 cf a1 fe ff       	call   0x4285c3
43e3f4:	83 c4 10             	add    $0x10,%esp
43e3f7:	85 c0                	test   %eax,%eax
43e3f9:	79 08                	jns    0x43e403
43e3fb:	83 0e 02             	orl    $0x2,(%esi)
43e3fe:	e9 cd 00 00 00       	jmp    0x43e4d0
43e403:	83 f8 01             	cmp    $0x1,%eax
43e406:	0f 8e c4 00 00 00    	jle    0x43e4d0
43e40c:	8b 45 24             	mov    0x24(%ebp),%eax
43e40f:	83 40 08 0c          	addl   $0xc,0x8(%eax)
43e413:	e9 b8 00 00 00       	jmp    0x43e4d0
43e418:	68 14 aa 49 00       	push   $0x49aa14
43e41d:	e9 78 fe ff ff       	jmp    0x43e29a
43e422:	68 24 aa 49 00       	push   $0x49aa24
43e427:	e9 6e fe ff ff       	jmp    0x43e29a
43e42c:	ff 75 f0             	push   -0x10(%ebp)
43e42f:	ff 75 24             	push   0x24(%ebp)
43e432:	6a 3c                	push   $0x3c
43e434:	e9 f9 fe ff ff       	jmp    0x43e332
43e439:	68 2c aa 49 00       	push   $0x49aa2c
43e43e:	e9 57 fe ff ff       	jmp    0x43e29a
43e443:	ff 75 f0             	push   -0x10(%ebp)
43e446:	8b 45 24             	mov    0x24(%ebp),%eax
43e449:	83 c0 1c             	add    $0x1c,%eax
43e44c:	50                   	push   %eax
43e44d:	6a 35                	push   $0x35
43e44f:	e9 de fe ff ff       	jmp    0x43e332
43e454:	ff 75 f0             	push   -0x10(%ebp)
43e457:	8b 45 24             	mov    0x24(%ebp),%eax
43e45a:	83 c0 18             	add    $0x18,%eax
43e45d:	50                   	push   %eax
43e45e:	6a 06                	push   $0x6
43e460:	e9 cd fe ff ff       	jmp    0x43e332
43e465:	68 3c aa 49 00       	push   $0x49aa3c
43e46a:	e9 2b fe ff ff       	jmp    0x43e29a
43e46f:	ff 75 f0             	push   -0x10(%ebp)
43e472:	8d 45 e8             	lea    -0x18(%ebp),%eax
43e475:	50                   	push   %eax
43e476:	6a 63                	push   $0x63
43e478:	52                   	push   %edx
43e479:	8d 45 14             	lea    0x14(%ebp),%eax
43e47c:	50                   	push   %eax
43e47d:	8d 45 0c             	lea    0xc(%ebp),%eax
43e480:	50                   	push   %eax
43e481:	57                   	push   %edi
43e482:	e8 70 e4 ff ff       	call   0x43c8f7
43e487:	8b 0e                	mov    (%esi),%ecx
43e489:	83 c4 1c             	add    $0x1c,%esp
43e48c:	0b c8                	or     %eax,%ecx
43e48e:	89 0e                	mov    %ecx,(%esi)
43e490:	f6 c1 02             	test   $0x2,%cl
43e493:	75 3b                	jne    0x43e4d0
43e495:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43e498:	83 f9 45             	cmp    $0x45,%ecx
43e49b:	0f 8d 4a fe ff ff    	jge    0x43e2eb
43e4a1:	83 c1 64             	add    $0x64,%ecx
43e4a4:	e9 42 fe ff ff       	jmp    0x43e2eb
43e4a9:	ff 75 24             	push   0x24(%ebp)
43e4ac:	8d 45 ec             	lea    -0x14(%ebp),%eax
43e4af:	8b cf                	mov    %edi,%ecx
43e4b1:	56                   	push   %esi
43e4b2:	53                   	push   %ebx
43e4b3:	ff 75 18             	push   0x18(%ebp)
43e4b6:	ff 75 14             	push   0x14(%ebp)
43e4b9:	ff 75 10             	push   0x10(%ebp)
43e4bc:	ff 75 0c             	push   0xc(%ebp)
43e4bf:	50                   	push   %eax
43e4c0:	e8 1d 0c 00 00       	call   0x43f0e2
43e4c5:	e9 9d fd ff ff       	jmp    0x43e267
43e4ca:	c7 06 02 00 00 00    	movl   $0x2,(%esi)
43e4d0:	8d 45 14             	lea    0x14(%ebp),%eax
43e4d3:	50                   	push   %eax
43e4d4:	8d 4d 0c             	lea    0xc(%ebp),%ecx
43e4d7:	e8 59 dd fe ff       	call   0x42c235
43e4dc:	84 c0                	test   %al,%al
43e4de:	74 03                	je     0x43e4e3
43e4e0:	83 0e 01             	orl    $0x1,(%esi)
43e4e3:	8b 45 08             	mov    0x8(%ebp),%eax
43e4e6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43e4e9:	89 08                	mov    %ecx,(%eax)
43e4eb:	8b 4d 10             	mov    0x10(%ebp),%ecx
43e4ee:	89 48 04             	mov    %ecx,0x4(%eax)
43e4f1:	e8 1d 15 00 00       	call   0x43fa13
43e4f6:	c2 28 00             	ret    $0x28
43e4f9:	90                   	nop
43e4fa:	4b                   	dec    %ebx
43e4fb:	e2 43                	loop   0x43e540
43e4fd:	00 77 e2             	add    %dh,-0x1e(%edi)
43e500:	43                   	inc    %ebx
43e501:	00 b8 e2 43 00 1c    	add    %bh,0x1c0043e2(%eax)
43e507:	e3 43                	jecxz  0x43e54c
43e509:	00 26                	add    %ah,(%esi)
43e50b:	e3 43                	jecxz  0x43e550
43e50d:	00 35 e3 43 00 c6    	add    %dh,0xc60043e3
43e513:	e3 43                	jecxz  0x43e558
43e515:	00 22                	add    %ah,(%edx)
43e517:	e4 43                	in     $0x43,%al
43e519:	00 2c e4             	add    %ch,(%esp,%eiz,8)
43e51c:	43                   	inc    %ebx
43e51d:	00 39                	add    %bh,(%ecx)
43e51f:	e4 43                	in     $0x43,%al
43e521:	00 43 e4             	add    %al,-0x1c(%ebx)
43e524:	43                   	inc    %ebx
43e525:	00 a9 e4 43 00 95    	add    %ch,-0x6affbc1c(%ecx)
43e52b:	e2 43                	loop   0x43e570
43e52d:	00 f6                	add    %dh,%dh
43e52f:	e2 43                	loop   0x43e574
43e531:	00 78 e3             	add    %bh,-0x1d(%eax)
43e534:	43                   	inc    %ebx
43e535:	00 8c e3 43 00 d7 e3 	add    %cl,-0x1c28ffbd(%ebx,%eiz,8)
43e53c:	43                   	inc    %ebx
43e53d:	00 e1                	add    %ah,%cl
43e53f:	e3 43                	jecxz  0x43e584
43e541:	00 18                	add    %bl,(%eax)
43e543:	e4 43                	in     $0x43,%al
43e545:	00 54 e4 43          	add    %dl,0x43(%esp,%eiz,8)
43e549:	00 65 e4             	add    %ah,-0x1c(%ebp)
43e54c:	43                   	inc    %ebx
43e54d:	00 6f e4             	add    %ch,-0x1c(%edi)
43e550:	43                   	inc    %ebx
43e551:	00 ca                	add    %cl,%dl
43e553:	e4 43                	in     $0x43,%al
43e555:	00 00                	add    %al,(%eax)
43e557:	01 02                	add    %eax,(%edx)
43e559:	03 16                	add    (%esi),%edx
43e55b:	16                   	push   %ss
43e55c:	16                   	push   %ss
43e55d:	04 05                	add    $0x5,%al
43e55f:	16                   	push   %ss
43e560:	16                   	push   %ss
43e561:	16                   	push   %ss
43e562:	06                   	push   %es
43e563:	16                   	push   %ss
43e564:	16                   	push   %ss
43e565:	16                   	push   %ss
43e566:	16                   	push   %ss
43e567:	07                   	pop    %es
43e568:	08 09                	or     %cl,(%ecx)
43e56a:	0a 16                	or     (%esi),%dl
43e56c:	0a 09                	or     (%ecx),%cl
43e56e:	0b 16                	or     (%esi),%edx
43e570:	16                   	push   %ss
43e571:	16                   	push   %ss
43e572:	16                   	push   %ss
43e573:	16                   	push   %ss
43e574:	16                   	push   %ss
43e575:	16                   	push   %ss
43e576:	00 01                	add    %al,(%ecx)
43e578:	0c 0d                	or     $0xd,%al
43e57a:	0d 16 16 01 16       	or     $0x16011616,%eax
43e57f:	0e                   	push   %cs
43e580:	16                   	push   %ss
43e581:	16                   	push   %ss
43e582:	0f 10 16             	movups (%esi),%xmm2
43e585:	11 16                	adc    %edx,(%esi)
43e587:	12 16                	adc    (%esi),%dl
43e589:	10 16                	adc    %dl,(%esi)
43e58b:	16                   	push   %ss
43e58c:	13 14 15 6a 18 b8 4e 	adc    0x4eb8186a(,%edx,1),%edx
43e593:	2e 49                	cs dec %ecx
43e595:	00 e8                	add    %ch,%al
43e597:	af                   	scas   %es:(%edi),%eax
43e598:	14 00                	adc    $0x0,%al
43e59a:	00 8b d9 89 5d f0    	add    %cl,-0xfa27627(%ebx)
43e5a0:	8b 45 1c             	mov    0x1c(%ebp),%eax
43e5a3:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43e5a6:	ff 70 30             	push   0x30(%eax)
43e5a9:	e8 8e a8 fe ff       	call   0x428e3c
43e5ae:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43e5b2:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43e5b5:	50                   	push   %eax
43e5b6:	e8 01 a7 fc ff       	call   0x408cbc
43e5bb:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
43e5bf:	8b f0                	mov    %eax,%esi
43e5c1:	59                   	pop    %ecx
43e5c2:	8d 4d e4             	lea    -0x1c(%ebp),%ecx