4395db:	85 c0                	test   %eax,%eax
4395dd:	74 0d                	je     0x4395ec
4395df:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4395e5:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
4395ec:	85 db                	test   %ebx,%ebx
4395ee:	74 0d                	je     0x4395fd
4395f0:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
4395f6:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
4395fd:	85 ff                	test   %edi,%edi
4395ff:	74 0d                	je     0x43960e
439601:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
439607:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
43960e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
439611:	8b c6                	mov    %esi,%eax
439613:	5f                   	pop    %edi
439614:	5e                   	pop    %esi
439615:	33 cd                	xor    %ebp,%ecx
439617:	5b                   	pop    %ebx
439618:	e8 33 39 01 00       	call   0x44cf50
43961d:	8b e5                	mov    %ebp,%esp
43961f:	5d                   	pop    %ebp
439620:	c2 10 00             	ret    $0x10
439623:	cc                   	int3
439624:	cc                   	int3
439625:	cc                   	int3
439626:	cc                   	int3
439627:	cc                   	int3
439628:	cc                   	int3
439629:	cc                   	int3
43962a:	cc                   	int3
43962b:	cc                   	int3
43962c:	cc                   	int3
43962d:	cc                   	int3
43962e:	cc                   	int3
43962f:	cc                   	int3
439630:	8b ff                	mov    %edi,%edi
439632:	55                   	push   %ebp
439633:	8b ec                	mov    %esp,%ebp
439635:	81 ec 28 02 00 00    	sub    $0x228,%esp
43963b:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
439640:	33 c5                	xor    %ebp,%eax
439642:	89 45 fc             	mov    %eax,-0x4(%ebp)
439645:	a1 08 29 41 00       	mov    0x412908,%eax
43964a:	89 45 f0             	mov    %eax,-0x10(%ebp)
43964d:	a1 0c 29 41 00       	mov    0x41290c,%eax
439652:	53                   	push   %ebx
439653:	89 45 f4             	mov    %eax,-0xc(%ebp)
439656:	66 a1 10 29 41 00    	mov    0x412910,%ax
43965c:	56                   	push   %esi
43965d:	57                   	push   %edi
43965e:	8b 7d 08             	mov    0x8(%ebp),%edi
439661:	8b f1                	mov    %ecx,%esi
439663:	8b 4d 0c             	mov    0xc(%ebp),%ecx
439666:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
43966a:	33 c0                	xor    %eax,%eax
43966c:	66 89 85 e0 fd ff ff 	mov    %ax,-0x220(%ebp)
439673:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
439679:	68 08 01 00 00       	push   $0x108
43967e:	50                   	push   %eax
43967f:	57                   	push   %edi
439680:	89 b5 dc fd ff ff    	mov    %esi,-0x224(%ebp)
439686:	89 8d d8 fd ff ff    	mov    %ecx,-0x228(%ebp)
43968c:	c7 01 ff ff ff ff    	movl   $0xffffffff,(%ecx)
439692:	ff 15 f4 20 45 00    	call   *0x4520f4
439698:	85 c0                	test   %eax,%eax
43969a:	0f 85 cd 00 00 00    	jne    0x43976d
4396a0:	ff 15 6c 20 45 00    	call   *0x45206c
4396a6:	8b 0e                	mov    (%esi),%ecx
4396a8:	8b d8                	mov    %eax,%ebx
4396aa:	53                   	push   %ebx
4396ab:	8b 71 10             	mov    0x10(%ecx),%esi
4396ae:	8b ce                	mov    %esi,%ecx
4396b0:	ff 15 84 23 45 00    	call   *0x452384
4396b6:	8b 8d dc fd ff ff    	mov    -0x224(%ebp),%ecx
4396bc:	ff d6                	call   *%esi
4396be:	8b f0                	mov    %eax,%esi
4396c0:	85 db                	test   %ebx,%ebx
4396c2:	0f 84 a9 00 00 00    	je     0x439771
4396c8:	66 83 3f 5c          	cmpw   $0x5c,(%edi)
4396cc:	75 23                	jne    0x4396f1
4396ce:	66 83 7f 02 5c       	cmpw   $0x5c,0x2(%edi)
4396d3:	75 1c                	jne    0x4396f1
4396d5:	51                   	push   %ecx
4396d6:	57                   	push   %edi
4396d7:	51                   	push   %ecx
4396d8:	ba 08 01 00 00       	mov    $0x108,%edx
4396dd:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
4396e3:	e8 c8 bb fd ff       	call   0x4152b0
4396e8:	8b c8                	mov    %eax,%ecx
4396ea:	e8 f1 f5 fe ff       	call   0x428ce0
4396ef:	eb 7e                	jmp    0x43976f
4396f1:	51                   	push   %ecx
4396f2:	8d 45 f0             	lea    -0x10(%ebp),%eax
4396f5:	be 08 01 00 00       	mov    $0x108,%esi
4396fa:	50                   	push   %eax
4396fb:	51                   	push   %ecx
4396fc:	8b d6                	mov    %esi,%edx
4396fe:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
439704:	e8 a7 bb fd ff       	call   0x4152b0
439709:	8b c8                	mov    %eax,%ecx
43970b:	e8 d0 f5 fe ff       	call   0x428ce0
439710:	8b c6                	mov    %esi,%eax
439712:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
439718:	66 83 39 00          	cmpw   $0x0,(%ecx)
43971c:	74 08                	je     0x439726
43971e:	83 c1 02             	add    $0x2,%ecx
439721:	83 e8 01             	sub    $0x1,%eax
439724:	75 f2                	jne    0x439718
439726:	8b c8                	mov    %eax,%ecx
439728:	f7 d8                	neg    %eax
43972a:	1b c0                	sbb    %eax,%eax
43972c:	25 a9 ff f8 7f       	and    $0x7ff8ffa9,%eax
439731:	05 57 00 07 80       	add    $0x80070057,%eax
439736:	85 c9                	test   %ecx,%ecx
439738:	74 2a                	je     0x439764
43973a:	8b d1                	mov    %ecx,%edx
43973c:	8d 81 f8 fe ff ff    	lea    -0x108(%ecx),%eax
439742:	f7 da                	neg    %edx
439744:	51                   	push   %ecx
439745:	1b d2                	sbb    %edx,%edx
439747:	23 d0                	and    %eax,%edx
439749:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
43974f:	03 d6                	add    %esi,%edx
439751:	2b f1                	sub    %ecx,%esi
439753:	57                   	push   %edi
439754:	51                   	push   %ecx
439755:	03 f6                	add    %esi,%esi
439757:	f7 d9                	neg    %ecx
439759:	1b c9                	sbb    %ecx,%ecx
43975b:	23 ce                	and    %esi,%ecx
43975d:	03 c8                	add    %eax,%ecx
43975f:	e8 4c bb fd ff       	call   0x4152b0
439764:	8b c8                	mov    %eax,%ecx
439766:	e8 75 f5 fe ff       	call   0x428ce0
43976b:	eb 02                	jmp    0x43976f
43976d:	33 db                	xor    %ebx,%ebx
43976f:	33 f6                	xor    %esi,%esi
439771:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
439777:	8d 51 02             	lea    0x2(%ecx),%edx
43977a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
439780:	66 8b 01             	mov    (%ecx),%ax
439783:	83 c1 02             	add    $0x2,%ecx
439786:	66 85 c0             	test   %ax,%ax
439789:	75 f5                	jne    0x439780
43978b:	2b ca                	sub    %edx,%ecx
43978d:	d1 f9                	sar    $1,%ecx
43978f:	66 83 bc 4d de fd ff 	cmpw   $0x5c,-0x222(%ebp,%ecx,2)
439796:	ff 5c
439798:	75 1d                	jne    0x4397b7
43979a:	8d 0c 4d fe ff ff ff 	lea    -0x2(,%ecx,2),%ecx
4397a1:	81 f9 10 02 00 00    	cmp    $0x210,%ecx
4397a7:	0f 83 84 00 00 00    	jae    0x439831
4397ad:	33 c0                	xor    %eax,%eax
4397af:	66 89 84 0d e0 fd ff 	mov    %ax,-0x220(%ebp,%ecx,1)
4397b6:	ff
4397b7:	6a 00                	push   $0x0
4397b9:	68 80 00 00 02       	push   $0x2000080
4397be:	6a 03                	push   $0x3
4397c0:	6a 00                	push   $0x0
4397c2:	6a 02                	push   $0x2
4397c4:	68 80 00 00 00       	push   $0x80
4397c9:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
4397cf:	50                   	push   %eax
4397d0:	ff 15 ec 20 45 00    	call   *0x4520ec
4397d6:	8b 8d d8 fd ff ff    	mov    -0x228(%ebp),%ecx
4397dc:	89 01                	mov    %eax,(%ecx)
4397de:	83 f8 ff             	cmp    $0xffffffff,%eax
4397e1:	75 26                	jne    0x439809
4397e3:	ff 15 6c 20 45 00    	call   *0x45206c
4397e9:	8b d8                	mov    %eax,%ebx
4397eb:	8b 85 dc fd ff ff    	mov    -0x224(%ebp),%eax
4397f1:	53                   	push   %ebx
4397f2:	8b 00                	mov    (%eax),%eax
4397f4:	8b 70 10             	mov    0x10(%eax),%esi
4397f7:	8b ce                	mov    %esi,%ecx
4397f9:	ff 15 84 23 45 00    	call   *0x452384
4397ff:	8b 8d dc fd ff ff    	mov    -0x224(%ebp),%ecx
439805:	ff d6                	call   *%esi
439807:	8b f0                	mov    %eax,%esi
439809:	85 f6                	test   %esi,%esi
43980b:	79 0f                	jns    0x43981c
43980d:	53                   	push   %ebx
43980e:	56                   	push   %esi
43980f:	51                   	push   %ecx
439810:	8b 8d dc fd ff ff    	mov    -0x224(%ebp),%ecx
439816:	57                   	push   %edi
439817:	e8 e4 f1 ff ff       	call   0x438a00
43981c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43981f:	8b c6                	mov    %esi,%eax
439821:	5f                   	pop    %edi
439822:	5e                   	pop    %esi
439823:	33 cd                	xor    %ebp,%ecx
439825:	5b                   	pop    %ebx
439826:	e8 25 37 01 00       	call   0x44cf50
43982b:	8b e5                	mov    %ebp,%esp
43982d:	5d                   	pop    %ebp
43982e:	c2 08 00             	ret    $0x8
439831:	e8 68 38 01 00       	call   0x44d09e
439836:	cc                   	int3
439837:	cc                   	int3
439838:	cc                   	int3
439839:	cc                   	int3
43983a:	cc                   	int3
43983b:	cc                   	int3
43983c:	cc                   	int3
43983d:	cc                   	int3
43983e:	cc                   	int3
43983f:	cc                   	int3
439840:	8b ff                	mov    %edi,%edi
439842:	55                   	push   %ebp
439843:	8b ec                	mov    %esp,%ebp
439845:	83 e4 f8             	and    $0xfffffff8,%esp
439848:	81 ec 7c 02 00 00    	sub    $0x27c,%esp
43984e:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
439853:	33 c4                	xor    %esp,%eax
439855:	89 84 24 78 02 00 00 	mov    %eax,0x278(%esp)
43985c:	53                   	push   %ebx
43985d:	8b 5d 0c             	mov    0xc(%ebp),%ebx
439860:	8d 54 24 70          	lea    0x70(%esp),%edx
439864:	56                   	push   %esi
439865:	57                   	push   %edi
439866:	8b f9                	mov    %ecx,%edi
439868:	89 5c 24 20          	mov    %ebx,0x20(%esp)
43986c:	8b 4d 08             	mov    0x8(%ebp),%ecx
43986f:	33 c0                	xor    %eax,%eax
439871:	66 89 44 24 78       	mov    %ax,0x78(%esp)
439876:	89 03                	mov    %eax,(%ebx)
439878:	8b 07                	mov    (%edi),%eax
43987a:	52                   	push   %edx
43987b:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
43987f:	51                   	push   %ecx
439880:	8b 70 14             	mov    0x14(%eax),%esi
439883:	8b ce                	mov    %esi,%ecx
439885:	89 7c 24 18          	mov    %edi,0x18(%esp)
439889:	c7 44 24 2c ff ff ff 	movl   $0xffffffff,0x2c(%esp)
439890:	ff
439891:	c7 44 24 24 ff ff ff 	movl   $0xffffffff,0x24(%esp)
439898:	ff
439899:	ff 15 84 23 45 00    	call   *0x452384
43989f:	8b cf                	mov    %edi,%ecx
4398a1:	ff d6                	call   *%esi
4398a3:	8b f8                	mov    %eax,%edi
4398a5:	85 ff                	test   %edi,%edi
4398a7:	0f 88 29 03 00 00    	js     0x439bd6
4398ad:	8b 74 24 10          	mov    0x10(%esp),%esi
4398b1:	83 c6 08             	add    $0x8,%esi
4398b4:	8b ce                	mov    %esi,%ecx
4398b6:	89 74 24 18          	mov    %esi,0x18(%esp)
4398ba:	e8 d1 ae fe ff       	call   0x424790
4398bf:	85 c0                	test   %eax,%eax
4398c1:	75 09                	jne    0x4398cc
4398c3:	6a ff                	push   $0xffffffff
4398c5:	8b ce                	mov    %esi,%ecx
4398c7:	e8 14 b2 fe ff       	call   0x424ae0
4398cc:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4398d0:	8d 44 24 78          	lea    0x78(%esp),%eax
4398d4:	50                   	push   %eax
4398d5:	e8 66 f5 ff ff       	call   0x438e40
4398da:	89 44 24 14          	mov    %eax,0x14(%esp)
4398de:	85 c0                	test   %eax,%eax
4398e0:	74 47                	je     0x439929
4398e2:	8b b0 10 02 00 00    	mov    0x210(%eax),%esi
4398e8:	e8 13 3b ff ff       	call   0x42d400
4398ed:	2b c6                	sub    %esi,%eax
4398ef:	79 34                	jns    0x439925
4398f1:	8b 44 24 14          	mov    0x14(%esp),%eax
4398f5:	8b 80 2c 08 00 00    	mov    0x82c(%eax),%eax
4398fb:	85 c0                	test   %eax,%eax
4398fd:	74 26                	je     0x439925
4398ff:	8b 4c 24 18          	mov    0x18(%esp),%ecx
439903:	6a 01                	push   $0x1
439905:	89 03                	mov    %eax,(%ebx)
439907:	e8 34 b5 fd ff       	call   0x414e40
43990c:	33 c0                	xor    %eax,%eax
43990e:	5f                   	pop    %edi
43990f:	5e                   	pop    %esi
439910:	5b                   	pop    %ebx
439911:	8b 8c 24 78 02 00 00 	mov    0x278(%esp),%ecx
439918:	33 cc                	xor    %esp,%ecx
43991a:	e8 31 36 01 00       	call   0x44cf50
43991f:	8b e5                	mov    %ebp,%esp
439921:	5d                   	pop    %ebp
439922:	c2 08 00             	ret    $0x8
439925:	8b 74 24 18          	mov    0x18(%esp),%esi
439929:	6a 01                	push   $0x1
43992b:	8b ce                	mov    %esi,%ecx
43992d:	e8 0e b5 fd ff       	call   0x414e40
439932:	a1 e4 1c 45 00       	mov    0x451ce4,%eax
439937:	85 c0                	test   %eax,%eax
439939:	74 02                	je     0x43993d
43993b:	89 03                	mov    %eax,(%ebx)
43993d:	83 3b 00             	cmpl   $0x0,(%ebx)
439940:	0f 85 69 01 00 00    	jne    0x439aaf
439946:	6a 00                	push   $0x0
439948:	68 80 00 00 02       	push   $0x2000080
43994d:	6a 03                	push   $0x3
43994f:	6a 00                	push   $0x0
439951:	6a 07                	push   $0x7
439953:	68 80 00 00 00       	push   $0x80
439958:	ff 74 24 40          	push   0x40(%esp)
43995c:	ff 15 ec 20 45 00    	call   *0x4520ec
439962:	89 44 24 1c          	mov    %eax,0x1c(%esp)
439966:	83 f8 ff             	cmp    $0xffffffff,%eax
439969:	0f 84 99 00 00 00    	je     0x439a08
43996f:	8b 35 64 f7 44 00    	mov    0x44f764,%esi
439975:	33 c0                	xor    %eax,%eax
439977:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
43997e:	00
43997f:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
439986:	00
439987:	89 44 24 5c          	mov    %eax,0x5c(%esp)
43998b:	89 44 24 60          	mov    %eax,0x60(%esp)
43998f:	89 44 24 64          	mov    %eax,0x64(%esp)
439993:	89 44 24 68          	mov    %eax,0x68(%esp)
439997:	89 44 24 6c          	mov    %eax,0x6c(%esp)
43999b:	89 44 24 70          	mov    %eax,0x70(%esp)
43999f:	89 44 24 74          	mov    %eax,0x74(%esp)
4399a3:	85 f6                	test   %esi,%esi
4399a5:	75 0d                	jne    0x4399b4
4399a7:	e8 84 40 00 00       	call   0x43da30
4399ac:	8b 35 64 f7 44 00    	mov    0x44f764,%esi
4399b2:	eb 05                	jmp    0x4399b9
4399b4:	a1 60 f7 44 00       	mov    0x44f760,%eax
4399b9:	85 c0                	test   %eax,%eax
4399bb:	75 35                	jne    0x4399f2
4399bd:	85 f6                	test   %esi,%esi
4399bf:	75 0b                	jne    0x4399cc
4399c1:	e8 6a 40 00 00       	call   0x43da30
4399c6:	8b 35 64 f7 44 00    	mov    0x44f764,%esi
4399cc:	6a 0b                	push   $0xb
4399ce:	6a 1c                	push   $0x1c
4399d0:	8d 44 24 64          	lea    0x64(%esp),%eax
4399d4:	8b ce                	mov    %esi,%ecx
4399d6:	50                   	push   %eax
4399d7:	8d 44 24 38          	lea    0x38(%esp),%eax
4399db:	50                   	push   %eax
4399dc:	ff 74 24 2c          	push   0x2c(%esp)
4399e0:	ff 15 84 23 45 00    	call   *0x452384
4399e6:	ff d6                	call   *%esi
4399e8:	85 c0                	test   %eax,%eax
4399ea:	78 06                	js     0x4399f2
4399ec:	8b 44 24 68          	mov    0x68(%esp),%eax
4399f0:	89 03                	mov    %eax,(%ebx)
4399f2:	ff 74 24 1c          	push   0x1c(%esp)
4399f6:	ff 15 10 21 45 00    	call   *0x452110
4399fc:	8b 74 24 18          	mov    0x18(%esp),%esi
439a00:	c7 44 24 1c ff ff ff 	movl   $0xffffffff,0x1c(%esp)
439a07:	ff
439a08:	83 3b 00             	cmpl   $0x0,(%ebx)
439a0b:	0f 85 9e 00 00 00    	jne    0x439aaf