40372b:	6a 00                	push   $0x0
40372d:	6a 13                	push   $0x13
40372f:	8d 8d ec fd ff ff    	lea    -0x214(%ebp),%ecx
403735:	51                   	push   %ecx
403736:	56                   	push   %esi
403737:	e8 94 e7 00 00       	call   0x411ed0
40373c:	6a 00                	push   $0x0
40373e:	6a 15                	push   $0x15
403740:	81 c7 c8 49 00 00    	add    $0x49c8,%edi
403746:	57                   	push   %edi
403747:	56                   	push   %esi
403748:	e8 83 e7 00 00       	call   0x411ed0
40374d:	83 c4 2c             	add    $0x2c,%esp
403750:	85 c0                	test   %eax,%eax
403752:	74 0c                	je     0x403760
403754:	5b                   	pop    %ebx
403755:	5f                   	pop    %edi
403756:	b8 01 00 00 00       	mov    $0x1,%eax
40375b:	5e                   	pop    %esi
40375c:	8b e5                	mov    %ebp,%esp
40375e:	5d                   	pop    %ebp
40375f:	c3                   	ret
403760:	5b                   	pop    %ebx
403761:	5f                   	pop    %edi
403762:	33 c0                	xor    %eax,%eax
403764:	5e                   	pop    %esi
403765:	8b e5                	mov    %ebp,%esp
403767:	5d                   	pop    %ebp
403768:	c3                   	ret
403769:	5f                   	pop    %edi
40376a:	33 c0                	xor    %eax,%eax
40376c:	5e                   	pop    %esi
40376d:	8b e5                	mov    %ebp,%esp
40376f:	5d                   	pop    %ebp
403770:	c3                   	ret
403771:	c9                   	leave
403772:	80 76 78 34          	xorb   $0x34,0x78(%esi)
403776:	66 91                	xchg   %ax,%cx
403778:	fb                   	sti
403779:	68 d6 60 73 95       	push   $0x957360d6
40377e:	ce                   	into
40377f:	37                   	aaa
403780:	55                   	push   %ebp
403781:	8b ec                	mov    %esp,%ebp
403783:	83 ec 54             	sub    $0x54,%esp
403786:	57                   	push   %edi
403787:	8b 7d 0c             	mov    0xc(%ebp),%edi
40378a:	80 bf 28 d8 1f 00 4d 	cmpb   $0x4d,0x1fd828(%edi)
403791:	0f 85 ee 00 00 00    	jne    0x403885
403797:	80 bf c8 49 00 00 00 	cmpb   $0x0,0x49c8(%edi)
40379e:	53                   	push   %ebx
40379f:	8d 9f c8 49 00 00    	lea    0x49c8(%edi),%ebx
4037a5:	0f 84 d9 00 00 00    	je     0x403884
4037ab:	83 7f 28 00          	cmpl   $0x0,0x28(%edi)
4037af:	0f 84 cf 00 00 00    	je     0x403884
4037b5:	83 7f 50 00          	cmpl   $0x0,0x50(%edi)
4037b9:	0f 84 c5 00 00 00    	je     0x403884
4037bf:	56                   	push   %esi
4037c0:	8b 75 08             	mov    0x8(%ebp),%esi
4037c3:	6a 00                	push   $0x0
4037c5:	6a 15                	push   $0x15
4037c7:	53                   	push   %ebx
4037c8:	56                   	push   %esi
4037c9:	e8 02 e7 00 00       	call   0x411ed0
4037ce:	83 c4 10             	add    $0x10,%esp
4037d1:	85 c0                	test   %eax,%eax
4037d3:	75 42                	jne    0x403817
4037d5:	8d 87 28 d8 1f 00    	lea    0x1fd828(%edi),%eax
4037db:	89 86 5c 0b 00 00    	mov    %eax,0xb5c(%esi)
4037e1:	8b 47 28             	mov    0x28(%edi),%eax
4037e4:	57                   	push   %edi
4037e5:	56                   	push   %esi
4037e6:	89 86 60 0b 00 00    	mov    %eax,0xb60(%esi)
4037ec:	e8 4f fc ff ff       	call   0x403440
4037f1:	83 c4 08             	add    $0x8,%esp
4037f4:	85 c0                	test   %eax,%eax
4037f6:	75 1f                	jne    0x403817
4037f8:	57                   	push   %edi
4037f9:	56                   	push   %esi
4037fa:	e8 61 fb ff ff       	call   0x403360
4037ff:	83 c4 08             	add    $0x8,%esp
403802:	85 c0                	test   %eax,%eax
403804:	75 11                	jne    0x403817
403806:	5e                   	pop    %esi
403807:	5b                   	pop    %ebx
403808:	c7 87 80 48 00 00 01 	movl   $0x1,0x4880(%edi)
40380f:	00 00 00
403812:	5f                   	pop    %edi
403813:	8b e5                	mov    %ebp,%esp
403815:	5d                   	pop    %ebp
403816:	c3                   	ret
403817:	33 ff                	xor    %edi,%edi
403819:	57                   	push   %edi
40381a:	6a 19                	push   $0x19
40381c:	53                   	push   %ebx
40381d:	56                   	push   %esi
40381e:	e8 ad e6 00 00       	call   0x411ed0
403823:	83 c4 10             	add    $0x10,%esp
403826:	85 c0                	test   %eax,%eax
403828:	74 59                	je     0x403883
40382a:	6a 40                	push   $0x40
40382c:	8d 4d b0             	lea    -0x50(%ebp),%ecx
40382f:	57                   	push   %edi
403830:	51                   	push   %ecx
403831:	e8 aa 4b 01 00       	call   0x4183e0
403836:	8b 96 98 0b 00 00    	mov    0xb98(%esi),%edx
40383c:	68 ab 21 01 ad       	push   $0xad0121ab
403841:	33 c0                	xor    %eax,%eax
403843:	57                   	push   %edi
403844:	57                   	push   %edi
403845:	89 45 f4             	mov    %eax,-0xc(%ebp)
403848:	89 45 f8             	mov    %eax,-0x8(%ebp)
40384b:	89 45 fc             	mov    %eax,-0x4(%ebp)
40384e:	52                   	push   %edx
40384f:	8d 46 1c             	lea    0x1c(%esi),%eax
403852:	50                   	push   %eax
403853:	89 7d f0             	mov    %edi,-0x10(%ebp)
403856:	c7 45 ac 44 00 00 00 	movl   $0x44,-0x54(%ebp)
40385d:	e8 6e ea 00 00       	call   0x4122d0
403862:	83 c4 20             	add    $0x20,%esp
403865:	3b c7                	cmp    %edi,%eax
403867:	74 1a                	je     0x403883
403869:	57                   	push   %edi
40386a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
40386d:	51                   	push   %ecx
40386e:	8d 55 ac             	lea    -0x54(%ebp),%edx
403871:	52                   	push   %edx
403872:	57                   	push   %edi
403873:	57                   	push   %edi
403874:	57                   	push   %edi
403875:	57                   	push   %edi
403876:	57                   	push   %edi
403877:	57                   	push   %edi
403878:	57                   	push   %edi
403879:	53                   	push   %ebx
40387a:	57                   	push   %edi
40387b:	ff d0                	call   *%eax
40387d:	89 be 68 0b 00 00    	mov    %edi,0xb68(%esi)
403883:	5e                   	pop    %esi
403884:	5b                   	pop    %ebx
403885:	5f                   	pop    %edi
403886:	8b e5                	mov    %ebp,%esp
403888:	5d                   	pop    %ebp
403889:	c3                   	ret
40388a:	ef                   	out    %eax,(%dx)
40388b:	60                   	pusha
40388c:	f3 79 56             	repz jns 0x4038e5
40388f:	e3 55                	jecxz  0x4038e6
403891:	8b ec                	mov    %esp,%ebp
403893:	8b 4d 08             	mov    0x8(%ebp),%ecx
403896:	85 c9                	test   %ecx,%ecx
403898:	74 16                	je     0x4038b0
40389a:	8b 45 0c             	mov    0xc(%ebp),%eax
40389d:	85 c0                	test   %eax,%eax
40389f:	74 0f                	je     0x4038b0
4038a1:	81 78 04 13 01 00 00 	cmpl   $0x113,0x4(%eax)
4038a8:	75 06                	jne    0x4038b0
4038aa:	ff 81 68 0b 00 00    	incl   0xb68(%ecx)
4038b0:	8b 81 d8 07 00 00    	mov    0x7d8(%ecx),%eax
4038b6:	85 c0                	test   %eax,%eax
4038b8:	74 12                	je     0x4038cc
4038ba:	83 b8 64 20 00 00 00 	cmpl   $0x0,0x2064(%eax)
4038c1:	74 09                	je     0x4038cc
4038c3:	51                   	push   %ecx
4038c4:	e8 57 f1 ff ff       	call   0x402a20
4038c9:	83 c4 04             	add    $0x4,%esp
4038cc:	5d                   	pop    %ebp
4038cd:	c3                   	ret
4038ce:	cc                   	int3
4038cf:	cc                   	int3
4038d0:	55                   	push   %ebp
4038d1:	8b ec                	mov    %esp,%ebp
4038d3:	81 ec a0 02 00 00    	sub    $0x2a0,%esp
4038d9:	8b 45 0c             	mov    0xc(%ebp),%eax
4038dc:	8b 48 08             	mov    0x8(%eax),%ecx
4038df:	53                   	push   %ebx
4038e0:	33 db                	xor    %ebx,%ebx
4038e2:	56                   	push   %esi
4038e3:	68 fe 01 00 00       	push   $0x1fe
4038e8:	8d 85 62 fd ff ff    	lea    -0x29e(%ebp),%eax
4038ee:	33 d2                	xor    %edx,%edx
4038f0:	53                   	push   %ebx
4038f1:	50                   	push   %eax
4038f2:	89 5d d0             	mov    %ebx,-0x30(%ebp)
4038f5:	89 4d cc             	mov    %ecx,-0x34(%ebp)
4038f8:	c7 45 a4 18 00 00 00 	movl   $0x18,-0x5c(%ebp)
4038ff:	89 5d a8             	mov    %ebx,-0x58(%ebp)
403902:	89 5d b0             	mov    %ebx,-0x50(%ebp)
403905:	89 5d ac             	mov    %ebx,-0x54(%ebp)
403908:	89 5d b4             	mov    %ebx,-0x4c(%ebp)
40390b:	89 5d b8             	mov    %ebx,-0x48(%ebp)
40390e:	66 89 95 60 fd ff ff 	mov    %dx,-0x2a0(%ebp)
403915:	e8 c6 4a 01 00       	call   0x4183e0
40391a:	8b 75 08             	mov    0x8(%ebp),%esi
40391d:	8d 4d cc             	lea    -0x34(%ebp),%ecx
403920:	51                   	push   %ecx
403921:	8d 55 a4             	lea    -0x5c(%ebp),%edx
403924:	52                   	push   %edx
403925:	68 01 04 00 00       	push   $0x401
40392a:	8d 45 0c             	lea    0xc(%ebp),%eax
40392d:	50                   	push   %eax
40392e:	56                   	push   %esi
40392f:	e8 3c 2c 01 00       	call   0x416570
403934:	83 c4 20             	add    $0x20,%esp
403937:	85 c0                	test   %eax,%eax
403939:	0f 88 f8 00 00 00    	js     0x403a37
40393f:	8b 86 98 0b 00 00    	mov    0xb98(%esi),%eax
403945:	57                   	push   %edi
403946:	68 f7 5e 14 cc       	push   $0xcc145ef7
40394b:	53                   	push   %ebx
40394c:	53                   	push   %ebx
40394d:	50                   	push   %eax
40394e:	8d 7e 1c             	lea    0x1c(%esi),%edi
403951:	57                   	push   %edi
403952:	c7 45 d4 5c 00 65 00 	movl   $0x65005c,-0x2c(%ebp)
403959:	c7 45 d8 78 00 70 00 	movl   $0x700078,-0x28(%ebp)
403960:	c7 45 dc 6c 00 6f 00 	movl   $0x6f006c,-0x24(%ebp)
403967:	c7 45 e0 72 00 65 00 	movl   $0x650072,-0x20(%ebp)
40396e:	c7 45 e4 72 00 2e 00 	movl   $0x2e0072,-0x1c(%ebp)
403975:	c7 45 e8 65 00 78 00 	movl   $0x780065,-0x18(%ebp)
40397c:	c7 45 ec 65 00 00 00 	movl   $0x65,-0x14(%ebp)
403983:	e8 48 e9 00 00       	call   0x4122d0
403988:	83 c4 14             	add    $0x14,%esp
40398b:	3b c3                	cmp    %ebx,%eax
40398d:	74 07                	je     0x403996
40398f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
403992:	53                   	push   %ebx
403993:	51                   	push   %ecx
403994:	ff d0                	call   *%eax
403996:	6a 40                	push   $0x40
403998:	8d 95 64 ff ff ff    	lea    -0x9c(%ebp),%edx
40399e:	53                   	push   %ebx
40399f:	52                   	push   %edx
4039a0:	e8 3b 4a 01 00       	call   0x4183e0
4039a5:	8d 8d 60 fd ff ff    	lea    -0x2a0(%ebp),%ecx
4039ab:	51                   	push   %ecx
4039ac:	33 c0                	xor    %eax,%eax
4039ae:	8d 55 f0             	lea    -0x10(%ebp),%edx
4039b1:	52                   	push   %edx
4039b2:	56                   	push   %esi
4039b3:	89 5d bc             	mov    %ebx,-0x44(%ebp)
4039b6:	89 45 c0             	mov    %eax,-0x40(%ebp)
4039b9:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4039bc:	89 45 c8             	mov    %eax,-0x38(%ebp)
4039bf:	c7 85 60 ff ff ff 44 	movl   $0x44,-0xa0(%ebp)
4039c6:	00 00 00
4039c9:	c7 45 f0 77 00 69 00 	movl   $0x690077,-0x10(%ebp)
4039d0:	c7 45 f4 6e 00 64 00 	movl   $0x64006e,-0xc(%ebp)
4039d7:	c7 45 f8 69 00 72 00 	movl   $0x720069,-0x8(%ebp)
4039de:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
4039e2:	e8 59 4c 00 00       	call   0x408640
4039e7:	53                   	push   %ebx
4039e8:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4039eb:	50                   	push   %eax
4039ec:	8d 8d 60 fd ff ff    	lea    -0x2a0(%ebp),%ecx
4039f2:	51                   	push   %ecx
4039f3:	e8 c8 4d 01 00       	call   0x4187c0
4039f8:	8b 96 98 0b 00 00    	mov    0xb98(%esi),%edx
4039fe:	68 ab 21 01 ad       	push   $0xad0121ab
403a03:	53                   	push   %ebx
403a04:	53                   	push   %ebx
403a05:	52                   	push   %edx
403a06:	57                   	push   %edi
403a07:	e8 c4 e8 00 00       	call   0x4122d0
403a0c:	83 c4 38             	add    $0x38,%esp
403a0f:	5f                   	pop    %edi
403a10:	3b c3                	cmp    %ebx,%eax
403a12:	74 23                	je     0x403a37
403a14:	53                   	push   %ebx
403a15:	8d 4d bc             	lea    -0x44(%ebp),%ecx
403a18:	51                   	push   %ecx
403a19:	8d 95 60 ff ff ff    	lea    -0xa0(%ebp),%edx
403a1f:	52                   	push   %edx
403a20:	53                   	push   %ebx
403a21:	53                   	push   %ebx
403a22:	53                   	push   %ebx
403a23:	53                   	push   %ebx
403a24:	53                   	push   %ebx
403a25:	53                   	push   %ebx
403a26:	53                   	push   %ebx
403a27:	8d 8d 60 fd ff ff    	lea    -0x2a0(%ebp),%ecx
403a2d:	51                   	push   %ecx
403a2e:	53                   	push   %ebx
403a2f:	ff d0                	call   *%eax
403a31:	5e                   	pop    %esi
403a32:	5b                   	pop    %ebx
403a33:	8b e5                	mov    %ebp,%esp
403a35:	5d                   	pop    %ebp
403a36:	c3                   	ret
403a37:	5e                   	pop    %esi
403a38:	33 c0                	xor    %eax,%eax
403a3a:	5b                   	pop    %ebx
403a3b:	8b e5                	mov    %ebp,%esp
403a3d:	5d                   	pop    %ebp
403a3e:	c3                   	ret
403a3f:	cc                   	int3
403a40:	55                   	push   %ebp
403a41:	8b ec                	mov    %esp,%ebp
403a43:	8b 4d 08             	mov    0x8(%ebp),%ecx
403a46:	8b 51 14             	mov    0x14(%ecx),%edx
403a49:	85 d2                	test   %edx,%edx
403a4b:	74 1f                	je     0x403a6c
403a4d:	8b 41 18             	mov    0x18(%ecx),%eax
403a50:	83 f8 10             	cmp    $0x10,%eax
403a53:	72 17                	jb     0x403a6c
403a55:	3d 00 14 00 00       	cmp    $0x1400,%eax
403a5a:	73 10                	jae    0x403a6c
403a5c:	6a 00                	push   $0x0
403a5e:	50                   	push   %eax
403a5f:	8b 41 04             	mov    0x4(%ecx),%eax
403a62:	52                   	push   %edx
403a63:	50                   	push   %eax
403a64:	e8 67 09 01 00       	call   0x4143d0
403a69:	83 c4 10             	add    $0x10,%esp
403a6c:	5d                   	pop    %ebp
403a6d:	c3                   	ret
403a6e:	cc                   	int3
403a6f:	cc                   	int3
403a70:	55                   	push   %ebp
403a71:	8b ec                	mov    %esp,%ebp
403a73:	8b 45 08             	mov    0x8(%ebp),%eax
403a76:	8b 48 18             	mov    0x18(%eax),%ecx
403a79:	53                   	push   %ebx
403a7a:	56                   	push   %esi
403a7b:	8b 70 04             	mov    0x4(%eax),%esi
403a7e:	8b 5e 40             	mov    0x40(%esi),%ebx
403a81:	57                   	push   %edi
403a82:	8b 78 1c             	mov    0x1c(%eax),%edi
403a85:	8b d1                	mov    %ecx,%edx
403a87:	85 db                	test   %ebx,%ebx
403a89:	74 0e                	je     0x403a99
403a8b:	83 be 48 15 00 00 00 	cmpl   $0x0,0x1548(%esi)
403a92:	75 0e                	jne    0x403aa2
403a94:	8b 50 14             	mov    0x14(%eax),%edx
403a97:	8b f9                	mov    %ecx,%edi
403a99:	83 be 48 15 00 00 00 	cmpl   $0x0,0x1548(%esi)
403aa0:	74 0a                	je     0x403aac
403aa2:	85 db                	test   %ebx,%ebx
403aa4:	75 06                	jne    0x403aac
403aa6:	8b 50 1c             	mov    0x1c(%eax),%edx
403aa9:	8b 78 20             	mov    0x20(%eax),%edi
403aac:	85 d2                	test   %edx,%edx
403aae:	74 17                	je     0x403ac7
403ab0:	8d 47 f0             	lea    -0x10(%edi),%eax
403ab3:	3d ef 13 00 00       	cmp    $0x13ef,%eax
403ab8:	77 0d                	ja     0x403ac7
403aba:	6a 00                	push   $0x0
403abc:	57                   	push   %edi
403abd:	52                   	push   %edx
403abe:	56                   	push   %esi