41639d:	68 48 13 00 00       	push   $0x1348
4163a2:	68 20 39 40 00       	push   $0x403920
4163a7:	e9 c4 fd ff ff       	jmp    0x416170
4163ac:	8d 85 80 fc ff ff    	lea    -0x380(%ebp),%eax
4163b2:	50                   	push   %eax
4163b3:	6a 00                	push   $0x0
4163b5:	6a 01                	push   $0x1
4163b7:	53                   	push   %ebx
4163b8:	ff 15 00 c1 42 00    	call   *0x42c100
4163be:	85 c0                	test   %eax,%eax
4163c0:	75 16                	jne    0x4163d8
4163c2:	e8 e9 1b 01 00       	call   0x427fb0
4163c7:	8b c8                	mov    %eax,%ecx
4163c9:	e8 dc 51 ff ff       	call   0x40b5aa
4163ce:	8b f0                	mov    %eax,%esi
4163d0:	56                   	push   %esi
4163d1:	68 54 13 00 00       	push   $0x1354
4163d6:	eb 9a                	jmp    0x416372
4163d8:	33 c9                	xor    %ecx,%ecx
4163da:	c7 85 6c fc ff ff 01 	movl   $0x1,-0x394(%ebp)
4163e1:	00 00 00
4163e4:	51                   	push   %ecx
4163e5:	51                   	push   %ecx
4163e6:	6a 04                	push   $0x4
4163e8:	8d 85 94 fc ff ff    	lea    -0x36c(%ebp),%eax
4163ee:	50                   	push   %eax
4163ef:	68 0b 00 02 00       	push   $0x2000b
4163f4:	51                   	push   %ecx
4163f5:	53                   	push   %ebx
4163f6:	ff 15 fc c0 42 00    	call   *0x42c0fc
4163fc:	85 c0                	test   %eax,%eax
4163fe:	75 1e                	jne    0x41641e
416400:	e8 ab 1b 01 00       	call   0x427fb0
416405:	8b c8                	mov    %eax,%ecx
416407:	e8 9e 51 ff ff       	call   0x40b5aa
41640c:	8b f0                	mov    %eax,%esi
41640e:	56                   	push   %esi
41640f:	68 64 13 00 00       	push   $0x1364
416414:	68 60 39 40 00       	push   $0x403960
416419:	e9 52 fd ff ff       	jmp    0x416170
41641e:	89 9d 38 fc ff ff    	mov    %ebx,-0x3c8(%ebp)
416424:	81 ce 00 00 08 00    	or     $0x80000,%esi
41642a:	8d 85 4c fc ff ff    	lea    -0x3b4(%ebp),%eax
416430:	50                   	push   %eax
416431:	8d 85 f4 fb ff ff    	lea    -0x40c(%ebp),%eax
416437:	50                   	push   %eax
416438:	33 c0                	xor    %eax,%eax
41643a:	50                   	push   %eax
41643b:	50                   	push   %eax
41643c:	56                   	push   %esi
41643d:	6a 01                	push   $0x1
41643f:	50                   	push   %eax
416440:	50                   	push   %eax
416441:	57                   	push   %edi
416442:	50                   	push   %eax
416443:	e8 c4 18 01 00       	call   0x427d0c
416448:	85 c0                	test   %eax,%eax
41644a:	75 1e                	jne    0x41646a
41644c:	e8 5f 1b 01 00       	call   0x427fb0
416451:	8b c8                	mov    %eax,%ecx
416453:	e8 52 51 ff ff       	call   0x40b5aa
416458:	8b f0                	mov    %eax,%esi
41645a:	56                   	push   %esi
41645b:	68 7d 13 00 00       	push   $0x137d
416460:	68 a0 39 40 00       	push   $0x4039a0
416465:	e9 06 fd ff ff       	jmp    0x416170
41646a:	8b bd 9c fc ff ff    	mov    -0x364(%ebp),%edi
416470:	33 f6                	xor    %esi,%esi
416472:	85 ff                	test   %edi,%edi
416474:	74 44                	je     0x4164ba
416476:	8b 85 4c fc ff ff    	mov    -0x3b4(%ebp),%eax
41647c:	46                   	inc    %esi
41647d:	89 bd 5c fc ff ff    	mov    %edi,-0x3a4(%ebp)
416483:	89 85 60 fc ff ff    	mov    %eax,-0x3a0(%ebp)
416489:	eb 16                	jmp    0x4164a1
41648b:	3d c0 00 00 00       	cmp    $0xc0,%eax
416490:	74 0f                	je     0x4164a1
416492:	3d 01 01 00 00       	cmp    $0x101,%eax
416497:	74 08                	je     0x4164a1
416499:	3b c6                	cmp    %esi,%eax
41649b:	0f 84 ec 00 00 00    	je     0x41658d
4164a1:	6a 00                	push   $0x0
4164a3:	56                   	push   %esi
4164a4:	56                   	push   %esi
4164a5:	8d 85 5c fc ff ff    	lea    -0x3a4(%ebp),%eax
4164ab:	50                   	push   %eax
4164ac:	6a 02                	push   $0x2
4164ae:	ff 15 f4 c3 42 00    	call   *0x42c3f4
4164b4:	85 c0                	test   %eax,%eax
4164b6:	75 d3                	jne    0x41648b
4164b8:	33 f6                	xor    %esi,%esi
4164ba:	8b 85 7c fc ff ff    	mov    -0x384(%ebp),%eax
4164c0:	85 c0                	test   %eax,%eax
4164c2:	74 14                	je     0x4164d8
4164c4:	68 00 80 00 00       	push   $0x8000
4164c9:	6a 00                	push   $0x0
4164cb:	50                   	push   %eax
4164cc:	ff b5 90 fc ff ff    	push   -0x370(%ebp)
4164d2:	ff 15 bc c0 42 00    	call   *0x42c0bc
4164d8:	85 ff                	test   %edi,%edi
4164da:	74 06                	je     0x4164e2
4164dc:	57                   	push   %edi
4164dd:	e8 d4 1a 01 00       	call   0x427fb6
4164e2:	8b bd 88 fc ff ff    	mov    -0x378(%ebp),%edi
4164e8:	83 bd 98 fc ff ff 00 	cmpl   $0x0,-0x368(%ebp)
4164ef:	74 12                	je     0x416503
4164f1:	ff b5 98 fc ff ff    	push   -0x368(%ebp)
4164f7:	e8 ba 1a 01 00       	call   0x427fb6
4164fc:	83 a5 98 fc ff ff 00 	andl   $0x0,-0x368(%ebp)
416503:	83 bd 4c fc ff ff 00 	cmpl   $0x0,-0x3b4(%ebp)
41650a:	74 0b                	je     0x416517
41650c:	ff b5 4c fc ff ff    	push   -0x3b4(%ebp)
416512:	e8 9f 1a 01 00       	call   0x427fb6
416517:	83 bd 50 fc ff ff 00 	cmpl   $0x0,-0x3b0(%ebp)
41651e:	74 0b                	je     0x41652b
416520:	ff b5 50 fc ff ff    	push   -0x3b0(%ebp)
416526:	e8 8b 1a 01 00       	call   0x427fb6
41652b:	83 bd 6c fc ff ff 00 	cmpl   $0x0,-0x394(%ebp)
416532:	74 0b                	je     0x41653f
416534:	85 db                	test   %ebx,%ebx
416536:	74 19                	je     0x416551
416538:	53                   	push   %ebx
416539:	ff 15 f8 c0 42 00    	call   *0x42c0f8
41653f:	85 db                	test   %ebx,%ebx
416541:	74 0e                	je     0x416551
416543:	68 00 80 00 00       	push   $0x8000
416548:	6a 00                	push   $0x0
41654a:	53                   	push   %ebx
41654b:	ff 15 d4 c0 42 00    	call   *0x42c0d4
416551:	8b 9d 68 fc ff ff    	mov    -0x398(%ebp),%ebx
416557:	85 db                	test   %ebx,%ebx
416559:	74 0d                	je     0x416568
41655b:	53                   	push   %ebx
41655c:	ff 15 f8 c3 42 00    	call   *0x42c3f8
416562:	53                   	push   %ebx
416563:	e8 4e 1a 01 00       	call   0x427fb6
416568:	85 ff                	test   %edi,%edi
41656a:	74 0e                	je     0x41657a
41656c:	68 00 80 00 00       	push   $0x8000
416571:	6a 00                	push   $0x0
416573:	57                   	push   %edi
416574:	ff 15 d4 c0 42 00    	call   *0x42c0d4
41657a:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41657d:	8b c6                	mov    %esi,%eax
41657f:	5f                   	pop    %edi
416580:	5e                   	pop    %esi
416581:	33 cd                	xor    %ebp,%ecx
416583:	5b                   	pop    %ebx
416584:	e8 57 15 01 00       	call   0x427ae0
416589:	c9                   	leave
41658a:	c2 0c 00             	ret    $0xc
41658d:	be 2b 04 07 80       	mov    $0x8007042b,%esi
416592:	e9 23 ff ff ff       	jmp    0x4164ba
416597:	8b ff                	mov    %edi,%edi
416599:	55                   	push   %ebp
41659a:	8b ec                	mov    %esp,%ebp
41659c:	81 ec 88 00 00 00    	sub    $0x88,%esp
4165a2:	a1 74 b6 42 00       	mov    0x42b674,%eax
4165a7:	33 c5                	xor    %ebp,%eax
4165a9:	89 45 fc             	mov    %eax,-0x4(%ebp)
4165ac:	8b 45 08             	mov    0x8(%ebp),%eax
4165af:	53                   	push   %ebx
4165b0:	56                   	push   %esi
4165b1:	57                   	push   %edi
4165b2:	8b da                	mov    %edx,%ebx
4165b4:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
4165ba:	8b f1                	mov    %ecx,%esi
4165bc:	33 ff                	xor    %edi,%edi
4165be:	56                   	push   %esi
4165bf:	68 d8 39 40 00       	push   $0x4039d8
4165c4:	89 3b                	mov    %edi,(%ebx)
4165c6:	89 38                	mov    %edi,(%eax)
4165c8:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
4165ce:	6a 40                	push   $0x40
4165d0:	50                   	push   %eax
4165d1:	e8 47 cf ff ff       	call   0x41351d
4165d6:	83 c4 10             	add    $0x10,%esp
4165d9:	85 c0                	test   %eax,%eax
4165db:	0f 88 90 00 00 00    	js     0x416671
4165e1:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
4165e7:	50                   	push   %eax
4165e8:	57                   	push   %edi
4165e9:	6a 01                	push   $0x1
4165eb:	57                   	push   %edi
4165ec:	ff 15 d0 c0 42 00    	call   *0x42c0d0
4165f2:	8b f8                	mov    %eax,%edi
4165f4:	85 ff                	test   %edi,%edi
4165f6:	75 13                	jne    0x41660b
4165f8:	e8 b3 19 01 00       	call   0x427fb0
4165fd:	85 c0                	test   %eax,%eax
4165ff:	7e 70                	jle    0x416671
416601:	0f b7 c0             	movzwl %ax,%eax
416604:	0d 00 00 07 80       	or     $0x80070000,%eax
416609:	eb 66                	jmp    0x416671
41660b:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
416611:	56                   	push   %esi
416612:	68 28 3a 40 00       	push   $0x403a28
416617:	6a 40                	push   $0x40
416619:	89 38                	mov    %edi,(%eax)
41661b:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
416621:	50                   	push   %eax
416622:	e8 f6 ce ff ff       	call   0x41351d
416627:	83 c4 10             	add    $0x10,%esp
41662a:	85 c0                	test   %eax,%eax
41662c:	78 43                	js     0x416671
41662e:	6a 00                	push   $0x0
416630:	ff 15 70 c1 42 00    	call   *0x42c170
416636:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41663c:	50                   	push   %eax
41663d:	6a 01                	push   $0x1
41663f:	6a 00                	push   $0x0
416641:	ff 15 b8 c0 42 00    	call   *0x42c0b8
416647:	8b f0                	mov    %eax,%esi
416649:	e8 62 19 01 00       	call   0x427fb0
41664e:	85 f6                	test   %esi,%esi
416650:	74 ab                	je     0x4165fd
416652:	3d b7 00 00 00       	cmp    $0xb7,%eax
416657:	75 0d                	jne    0x416666
416659:	56                   	push   %esi
41665a:	e8 57 19 01 00       	call   0x427fb6
41665f:	b8 04 80 1b 80       	mov    $0x801b8004,%eax
416664:	eb 0b                	jmp    0x416671
416666:	57                   	push   %edi
416667:	ff 15 b4 c0 42 00    	call   *0x42c0b4
41666d:	89 33                	mov    %esi,(%ebx)
41666f:	33 c0                	xor    %eax,%eax
416671:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416674:	5f                   	pop    %edi
416675:	5e                   	pop    %esi
416676:	33 cd                	xor    %ebp,%ecx
416678:	5b                   	pop    %ebx
416679:	e8 62 14 01 00       	call   0x427ae0
41667e:	c9                   	leave
41667f:	c2 04 00             	ret    $0x4
416682:	8b ff                	mov    %edi,%edi
416684:	55                   	push   %ebp
416685:	8b ec                	mov    %esp,%ebp
416687:	81 ec 70 09 00 00    	sub    $0x970,%esp
41668d:	a1 74 b6 42 00       	mov    0x42b674,%eax
416692:	33 c5                	xor    %ebp,%eax
416694:	89 45 fc             	mov    %eax,-0x4(%ebp)
416697:	56                   	push   %esi
416698:	57                   	push   %edi
416699:	8b f9                	mov    %ecx,%edi
41669b:	8b f2                	mov    %edx,%esi
41669d:	85 ff                	test   %edi,%edi
41669f:	74 45                	je     0x4166e6
4166a1:	85 f6                	test   %esi,%esi
4166a3:	74 41                	je     0x4166e6
4166a5:	83 26 00             	andl   $0x0,(%esi)
4166a8:	8d 85 90 f6 ff ff    	lea    -0x970(%ebp),%eax
4166ae:	68 68 09 00 00       	push   $0x968
4166b3:	6a 00                	push   $0x0
4166b5:	50                   	push   %eax
4166b6:	e8 f2 1c 01 00       	call   0x4283ad
4166bb:	83 c4 0c             	add    $0xc,%esp
4166be:	8d 95 90 f6 ff ff    	lea    -0x970(%ebp),%edx
4166c4:	8b cf                	mov    %edi,%ecx
4166c6:	e8 b1 f0 ff ff       	call   0x41577c
4166cb:	85 c0                	test   %eax,%eax
4166cd:	78 36                	js     0x416705
4166cf:	8b 4d 88             	mov    -0x78(%ebp),%ecx
4166d2:	8b c1                	mov    %ecx,%eax
4166d4:	0b 45 8c             	or     -0x74(%ebp),%eax
4166d7:	75 07                	jne    0x4166e0
4166d9:	b8 90 04 07 80       	mov    $0x80070490,%eax
4166de:	eb 25                	jmp    0x416705
4166e0:	89 0e                	mov    %ecx,(%esi)
4166e2:	33 c0                	xor    %eax,%eax
4166e4:	eb 1f                	jmp    0x416705
4166e6:	68 c8 15 00 00       	push   $0x15c8
4166eb:	68 68 3a 40 00       	push   $0x403a68
4166f0:	6a 00                	push   $0x0
4166f2:	68 96 00 00 00       	push   $0x96
4166f7:	ff 15 14 c4 42 00    	call   *0x42c414
4166fd:	83 c4 10             	add    $0x10,%esp
416700:	b8 57 00 07 80       	mov    $0x80070057,%eax
416705:	8b 4d fc             	mov    -0x4(%ebp),%ecx
416708:	5f                   	pop    %edi
416709:	33 cd                	xor    %ebp,%ecx
41670b:	5e                   	pop    %esi
41670c:	e8 cf 13 01 00       	call   0x427ae0
416711:	c9                   	leave
416712:	c3                   	ret
416713:	8b ff                	mov    %edi,%edi
416715:	55                   	push   %ebp
416716:	8b ec                	mov    %esp,%ebp
416718:	53                   	push   %ebx
416719:	33 db                	xor    %ebx,%ebx
41671b:	56                   	push   %esi
41671c:	8b 75 08             	mov    0x8(%ebp),%esi
41671f:	85 c9                	test   %ecx,%ecx
416721:	74 33                	je     0x416756
416723:	57                   	push   %edi
416724:	8b fa                	mov    %edx,%edi
416726:	66 39 19             	cmp    %bx,(%ecx)
416729:	74 08                	je     0x416733
41672b:	83 c1 02             	add    $0x2,%ecx
41672e:	83 ef 01             	sub    $0x1,%edi
416731:	75 f3                	jne    0x416726
416733:	8b c7                	mov    %edi,%eax
416735:	f7 d8                	neg    %eax
416737:	1b c0                	sbb    %eax,%eax
416739:	25 a9 ff f8 7f       	and    $0x7ff8ffa9,%eax
41673e:	05 57 00 07 80       	add    $0x80070057,%eax
416743:	85 f6                	test   %esi,%esi
416745:	74 0c                	je     0x416753
416747:	85 ff                	test   %edi,%edi
416749:	74 06                	je     0x416751
41674b:	2b d7                	sub    %edi,%edx
41674d:	89 16                	mov    %edx,(%esi)
41674f:	eb 02                	jmp    0x416753
416751:	89 1e                	mov    %ebx,(%esi)
416753:	5f                   	pop    %edi
416754:	eb 05                	jmp    0x41675b
416756:	b8 57 00 07 80       	mov    $0x80070057,%eax
41675b:	85 c0                	test   %eax,%eax
41675d:	79 06                	jns    0x416765
41675f:	85 f6                	test   %esi,%esi
416761:	74 02                	je     0x416765
416763:	89 1e                	mov    %ebx,(%esi)
416765:	5e                   	pop    %esi
416766:	5b                   	pop    %ebx
416767:	5d                   	pop    %ebp
416768:	c2 04 00             	ret    $0x4
41676b:	8b ff                	mov    %edi,%edi
41676d:	55                   	push   %ebp
41676e:	8b ec                	mov    %esp,%ebp
416770:	d1 ea                	shr    $1,%edx
416772:	8b c2                	mov    %edx,%eax
416774:	f7 d8                	neg    %eax
416776:	1b c0                	sbb    %eax,%eax
416778:	25 a9 ff f8 7f       	and    $0x7ff8ffa9,%eax
41677d:	05 57 00 07 80       	add    $0x80070057,%eax
416782:	85 d2                	test   %edx,%edx
416784:	74 0a                	je     0x416790
416786:	51                   	push   %ecx
416787:	ff 75 08             	push   0x8(%ebp)
41678a:	51                   	push   %ecx
41678b:	e8 55 22 ff ff       	call   0x4089e5
416790:	5d                   	pop    %ebp
416791:	c2 04 00             	ret    $0x4
416794:	6a 0c                	push   $0xc
416796:	b8 7e 88 42 00       	mov    $0x42887e,%eax
41679b:	e8 c8 18 01 00       	call   0x428068
4167a0:	8b fa                	mov    %edx,%edi
4167a2:	8b d9                	mov    %ecx,%ebx
4167a4:	33 c0                	xor    %eax,%eax
4167a6:	89 45 e8             	mov    %eax,-0x18(%ebp)
4167a9:	89 45 f0             	mov    %eax,-0x10(%ebp)