40a89b:	e8 14 00 00 00       	call   0x40a8b4
40a8a0:	c3                   	ret
40a8a1:	8d 40 00             	lea    0x0(%eax),%eax
40a8a4:	60                   	pusha
40a8a5:	8b 48 39             	mov    0x39(%eax),%ecx
40a8a8:	e3 06                	jecxz  0x40a8b0
40a8aa:	92                   	xchg   %eax,%edx
40a8ab:	8b 42 3d             	mov    0x3d(%edx),%eax
40a8ae:	ff d1                	call   *%ecx
40a8b0:	61                   	popa
40a8b1:	c3                   	ret
40a8b2:	8b c0                	mov    %eax,%eax
40a8b4:	6a 00                	push   $0x0
40a8b6:	51                   	push   %ecx
40a8b7:	52                   	push   %edx
40a8b8:	6a 01                	push   $0x1
40a8ba:	50                   	push   %eax
40a8bb:	e8 f8 fe ff ff       	call   0x40a7b8
40a8c0:	50                   	push   %eax
40a8c1:	e8 72 a0 ff ff       	call   0x404938
40a8c6:	c3                   	ret
40a8c7:	90                   	nop
40a8c8:	55                   	push   %ebp
40a8c9:	8b ec                	mov    %esp,%ebp
40a8cb:	53                   	push   %ebx
40a8cc:	89 c3                	mov    %eax,%ebx
40a8ce:	51                   	push   %ecx
40a8cf:	e8 a0 2c 00 00       	call   0x40d574
40a8d4:	5a                   	pop    %edx
40a8d5:	8b 4d 08             	mov    0x8(%ebp),%ecx
40a8d8:	31 c0                	xor    %eax,%eax
40a8da:	89 01                	mov    %eax,(%ecx)
40a8dc:	89 41 04             	mov    %eax,0x4(%ecx)
40a8df:	39 05 14 61 42 00    	cmp    %eax,0x426114
40a8e5:	74 08                	je     0x40a8ef
40a8e7:	89 d8                	mov    %ebx,%eax
40a8e9:	ff 15 14 61 42 00    	call   *0x426114
40a8ef:	5b                   	pop    %ebx
40a8f0:	5d                   	pop    %ebp
40a8f1:	c2 04 00             	ret    $0x4
40a8f4:	8b 48 29             	mov    0x29(%eax),%ecx
40a8f7:	41                   	inc    %ecx
40a8f8:	e2 34                	loop   0x40a92e
40a8fa:	50                   	push   %eax
40a8fb:	e8 f8 fa ff ff       	call   0x40a3f8
40a900:	5a                   	pop    %edx
40a901:	50                   	push   %eax
40a902:	89 42 29             	mov    %eax,0x29(%edx)
40a905:	c7 40 25 b4 54 40 00 	movl   $0x4054b4,0x25(%eax)
40a90c:	89 50 29             	mov    %edx,0x29(%eax)
40a90f:	8b 4a 18             	mov    0x18(%edx),%ecx
40a912:	e3 19                	jecxz  0x40a92d
40a914:	ff b1 ac 00 00 00    	push   0xac(%ecx)
40a91a:	8b 89 a4 00 00 00    	mov    0xa4(%ecx),%ecx
40a920:	89 48 2d             	mov    %ecx,0x2d(%eax)
40a923:	5a                   	pop    %edx
40a924:	85 d2                	test   %edx,%edx
40a926:	74 05                	je     0x40a92d
40a928:	e8 77 fb ff ff       	call   0x40a4a4
40a92d:	59                   	pop    %ecx
40a92e:	91                   	xchg   %eax,%ecx
40a92f:	c3                   	ret
40a930:	66 83 78 43 00       	cmpw   $0x0,0x43(%eax)
40a935:	89 c2                	mov    %eax,%edx
40a937:	8b 42 1c             	mov    0x1c(%edx),%eax
40a93a:	74 12                	je     0x40a94e
40a93c:	8b 42 45             	mov    0x45(%edx),%eax
40a93f:	52                   	push   %edx
40a940:	ff 52 41             	call   *0x41(%edx)
40a943:	87 04 24             	xchg   %eax,(%esp)
40a946:	5a                   	pop    %edx
40a947:	52                   	push   %edx
40a948:	e8 db fe ff ff       	call   0x40a828
40a94d:	58                   	pop    %eax
40a94e:	c3                   	ret
40a94f:	90                   	nop
40a950:	56                   	push   %esi
40a951:	8d 70 29             	lea    0x29(%eax),%esi
40a954:	b1 03                	mov    $0x3,%cl
40a956:	89 c2                	mov    %eax,%edx
40a958:	ad                   	lods   %ds:(%esi),%eax
40a959:	85 c0                	test   %eax,%eax
40a95b:	74 0a                	je     0x40a967
40a95d:	89 50 29             	mov    %edx,0x29(%eax)
40a960:	c7 40 25 b4 54 40 00 	movl   $0x4054b4,0x25(%eax)
40a967:	fe c9                	dec    %cl
40a969:	75 ed                	jne    0x40a958
40a96b:	5e                   	pop    %esi
40a96c:	c3                   	ret
40a96d:	8d 40 00             	lea    0x0(%eax),%eax
40a970:	85 d2                	test   %edx,%edx
40a972:	9c                   	pushf
40a973:	7d 02                	jge    0x40a977
40a975:	f7 da                	neg    %edx
40a977:	51                   	push   %ecx
40a978:	e8 73 ab ff ff       	call   0x4054f0
40a97d:	58                   	pop    %eax
40a97e:	9d                   	popf
40a97f:	7d 07                	jge    0x40a988
40a981:	89 c2                	mov    %eax,%edx
40a983:	e8 54 ab ff ff       	call   0x4054dc
40a988:	c3                   	ret
40a989:	8d 40 00             	lea    0x0(%eax),%eax
40a98c:	56                   	push   %esi
40a98d:	92                   	xchg   %eax,%edx
40a98e:	50                   	push   %eax
40a98f:	e8 54 8d ff ff       	call   0x4036e8
40a994:	58                   	pop    %eax
40a995:	e8 aa 91 ff ff       	call   0x403b44
40a99a:	50                   	push   %eax
40a99b:	e8 54 8f ff ff       	call   0x4038f4
40a9a0:	5e                   	pop    %esi
40a9a1:	91                   	xchg   %eax,%ecx
40a9a2:	e3 0d                	jecxz  0x40a9b1
40a9a4:	ac                   	lods   %ds:(%esi),%al
40a9a5:	2c 41                	sub    $0x41,%al
40a9a7:	3c 1a                	cmp    $0x1a,%al
40a9a9:	73 04                	jae    0x40a9af
40a9ab:	80 46 ff 20          	addb   $0x20,-0x1(%esi)
40a9af:	e2 f3                	loop   0x40a9a4
40a9b1:	5e                   	pop    %esi
40a9b2:	c3                   	ret
40a9b3:	90                   	nop
40a9b4:	56                   	push   %esi
40a9b5:	92                   	xchg   %eax,%edx
40a9b6:	50                   	push   %eax
40a9b7:	e8 2c 8d ff ff       	call   0x4036e8
40a9bc:	58                   	pop    %eax
40a9bd:	e8 82 91 ff ff       	call   0x403b44
40a9c2:	50                   	push   %eax
40a9c3:	e8 2c 8f ff ff       	call   0x4038f4
40a9c8:	5e                   	pop    %esi
40a9c9:	91                   	xchg   %eax,%ecx
40a9ca:	e3 0d                	jecxz  0x40a9d9
40a9cc:	ac                   	lods   %ds:(%esi),%al
40a9cd:	2c 61                	sub    $0x61,%al
40a9cf:	3c 1a                	cmp    $0x1a,%al
40a9d1:	73 04                	jae    0x40a9d7
40a9d3:	80 6e ff 20          	subb   $0x20,-0x1(%esi)
40a9d7:	e2 f3                	loop   0x40a9cc
40a9d9:	5e                   	pop    %esi
40a9da:	c3                   	ret
40a9db:	90                   	nop
40a9dc:	85 c0                	test   %eax,%eax
40a9de:	74 0e                	je     0x40a9ee
40a9e0:	50                   	push   %eax
40a9e1:	e8 4a 7e ff ff       	call   0x402830
40a9e6:	5a                   	pop    %edx
40a9e7:	50                   	push   %eax
40a9e8:	e8 7f a1 ff ff       	call   0x404b6c
40a9ed:	58                   	pop    %eax
40a9ee:	c3                   	ret
40a9ef:	90                   	nop
40a9f0:	50                   	push   %eax
40a9f1:	89 d0                	mov    %edx,%eax
40a9f3:	e8 fc 8e ff ff       	call   0x4038f4
40a9f8:	89 c1                	mov    %eax,%ecx
40a9fa:	58                   	pop    %eax
40a9fb:	e8 38 a6 ff ff       	call   0x405038
40aa00:	e8 5b ae ff ff       	call   0x405860
40aa05:	c3                   	ret
40aa06:	8b c0                	mov    %eax,%eax
40aa08:	31 c9                	xor    %ecx,%ecx
40aa0a:	51                   	push   %ecx
40aa0b:	89 d1                	mov    %edx,%ecx
40aa0d:	c1 e9 10             	shr    $0x10,%ecx
40aa10:	66 81 e1 ff 1f       	and    $0x1fff,%cx
40aa15:	75 02                	jne    0x40aa19
40aa17:	b1 80                	mov    $0x80,%cl
40aa19:	51                   	push   %ecx
40aa1a:	88 f1                	mov    %dh,%cl
40aa1c:	51                   	push   %ecx
40aa1d:	6a 00                	push   $0x0
40aa1f:	88 d1                	mov    %dl,%cl
40aa21:	51                   	push   %ecx
40aa22:	66 ba 00 00          	mov    $0x0,%dx
40aa26:	52                   	push   %edx
40aa27:	50                   	push   %eax
40aa28:	e8 4f a4 ff ff       	call   0x404e7c
40aa2d:	c3                   	ret
40aa2e:	8b c0                	mov    %eax,%eax
40aa30:	50                   	push   %eax
40aa31:	e8 5a 9d ff ff       	call   0x404790
40aa36:	85 c0                	test   %eax,%eax
40aa38:	0f 95 c0             	setne  %al
40aa3b:	c3                   	ret
40aa3c:	55                   	push   %ebp
40aa3d:	6a 00                	push   $0x0
40aa3f:	89 e5                	mov    %esp,%ebp
40aa41:	6a 00                	push   $0x0
40aa43:	55                   	push   %ebp
40aa44:	51                   	push   %ecx
40aa45:	52                   	push   %edx
40aa46:	50                   	push   %eax
40aa47:	e8 04 9e ff ff       	call   0x404850
40aa4c:	85 c0                	test   %eax,%eax
40aa4e:	58                   	pop    %eax
40aa4f:	75 02                	jne    0x40aa53
40aa51:	31 c0                	xor    %eax,%eax
40aa53:	5d                   	pop    %ebp
40aa54:	c3                   	ret
40aa55:	8d 40 00             	lea    0x0(%eax),%eax
40aa58:	55                   	push   %ebp
40aa59:	55                   	push   %ebp
40aa5a:	89 e5                	mov    %esp,%ebp
40aa5c:	6a 00                	push   $0x0
40aa5e:	55                   	push   %ebp
40aa5f:	51                   	push   %ecx
40aa60:	52                   	push   %edx
40aa61:	50                   	push   %eax
40aa62:	e8 39 9e ff ff       	call   0x4048a0
40aa67:	85 c0                	test   %eax,%eax
40aa69:	58                   	pop    %eax
40aa6a:	75 02                	jne    0x40aa6e
40aa6c:	31 c0                	xor    %eax,%eax
40aa6e:	5d                   	pop    %ebp
40aa6f:	c3                   	ret
40aa70:	53                   	push   %ebx
40aa71:	50                   	push   %eax
40aa72:	68 01 80 00 00       	push   $0x8001
40aa77:	e8 e4 9d ff ff       	call   0x404860
40aa7c:	93                   	xchg   %eax,%ebx
40aa7d:	e8 42 a4 ff ff       	call   0x404ec4
40aa82:	40                   	inc    %eax
40aa83:	74 06                	je     0x40aa8b
40aa85:	48                   	dec    %eax
40aa86:	24 10                	and    $0x10,%al
40aa88:	0f 95 c0             	setne  %al
40aa8b:	93                   	xchg   %eax,%ebx
40aa8c:	50                   	push   %eax
40aa8d:	e8 ce 9d ff ff       	call   0x404860
40aa92:	93                   	xchg   %eax,%ebx
40aa93:	5b                   	pop    %ebx
40aa94:	c3                   	ret
40aa95:	8d 40 00             	lea    0x0(%eax),%eax
40aa98:	8d 50 18             	lea    0x18(%eax),%edx
40aa9b:	e8 03 00 00 00       	call   0x40aaa3
40aaa0:	83 c2 04             	add    $0x4,%edx
40aaa3:	60                   	pusha
40aaa4:	31 c0                	xor    %eax,%eax
40aaa6:	87 02                	xchg   %eax,(%edx)
40aaa8:	e8 63 f7 ff ff       	call   0x40a210
40aaad:	61                   	popa
40aaae:	c3                   	ret
40aaaf:	90                   	nop
40aab0:	53                   	push   %ebx
40aab1:	89 c3                	mov    %eax,%ebx
40aab3:	e8 e0 ff ff ff       	call   0x40aa98
40aab8:	8d 43 20             	lea    0x20(%ebx),%eax
40aabb:	e8 d4 8b ff ff       	call   0x403694
40aac0:	93                   	xchg   %eax,%ebx
40aac1:	e8 5a f7 ff ff       	call   0x40a220
40aac6:	5b                   	pop    %ebx
40aac7:	c3                   	ret
40aac8:	8b 48 18             	mov    0x18(%eax),%ecx
40aacb:	e3 03                	jecxz  0x40aad0
40aacd:	8b 49 1c             	mov    0x1c(%ecx),%ecx
40aad0:	91                   	xchg   %eax,%ecx
40aad1:	c3                   	ret
40aad2:	8b c0                	mov    %eax,%eax
40aad4:	50                   	push   %eax
40aad5:	ff 70 50             	push   0x50(%eax)
40aad8:	ff 50 30             	call   *0x30(%eax)
40aadb:	58                   	pop    %eax
40aadc:	e8 2f f7 ff ff       	call   0x40a210
40aae1:	58                   	pop    %eax
40aae2:	e8 39 f7 ff ff       	call   0x40a220
40aae7:	c3                   	ret
40aae8:	31 c9                	xor    %ecx,%ecx
40aaea:	87 48 3c             	xchg   %ecx,0x3c(%eax)
40aaed:	e3 06                	jecxz  0x40aaf5
40aaef:	91                   	xchg   %eax,%ecx
40aaf0:	e8 6b 7d ff ff       	call   0x402860
40aaf5:	c3                   	ret
40aaf6:	8b c0                	mov    %eax,%eax
40aaf8:	53                   	push   %ebx
40aaf9:	93                   	xchg   %eax,%ebx
40aafa:	b8 88 61 42 00       	mov    $0x426188,%eax
40aaff:	e8 50 c0 ff ff       	call   0x406b54
40ab04:	8b 15 cc 60 42 00    	mov    0x4260cc,%edx
40ab0a:	89 50 28             	mov    %edx,0x28(%eax)
40ab0d:	93                   	xchg   %eax,%ebx
40ab0e:	ba 01 03 00 80       	mov    $0x80000301,%edx
40ab13:	e8 f0 fe ff ff       	call   0x40aa08
40ab18:	89 43 40             	mov    %eax,0x40(%ebx)
40ab1b:	93                   	xchg   %eax,%ebx
40ab1c:	5b                   	pop    %ebx
40ab1d:	c3                   	ret
40ab1e:	8b c0                	mov    %eax,%eax
40ab20:	53                   	push   %ebx
40ab21:	93                   	xchg   %eax,%ebx
40ab22:	b8 88 61 42 00       	mov    $0x426188,%eax
40ab27:	e8 28 c0 ff ff       	call   0x406b54
40ab2c:	c7 40 2c cc 6b 40 00 	movl   $0x406bcc,0x2c(%eax)
40ab33:	c7 40 24 c8 6c 40 00 	movl   $0x406cc8,0x24(%eax)
40ab3a:	93                   	xchg   %eax,%ebx
40ab3b:	ba 01 02 00 40       	mov    $0x40000201,%edx
40ab40:	e8 c3 fe ff ff       	call   0x40aa08
40ab45:	89 43 40             	mov    %eax,0x40(%ebx)
40ab48:	93                   	xchg   %eax,%ebx
40ab49:	5b                   	pop    %ebx
40ab4a:	c3                   	ret
40ab4b:	90                   	nop
40ab4c:	50                   	push   %eax
40ab4d:	8d 50 19             	lea    0x19(%eax),%edx
40ab50:	52                   	push   %edx
40ab51:	8d 40 1d             	lea    0x1d(%eax),%eax
40ab54:	e8 3b 8b ff ff       	call   0x403694
40ab59:	58                   	pop    %eax
40ab5a:	e8 35 8b ff ff       	call   0x403694
40ab5f:	58                   	pop    %eax
40ab60:	e8 bb f6 ff ff       	call   0x40a220
40ab65:	c3                   	ret
40ab66:	8b c0                	mov    %eax,%eax
40ab68:	56                   	push   %esi
40ab69:	57                   	push   %edi
40ab6a:	50                   	push   %eax
40ab6b:	e8 2c c5 ff ff       	call   0x40709c
40ab70:	5e                   	pop    %esi
40ab71:	83 fe 78             	cmp    $0x78,%esi
40ab74:	89 70 6c             	mov    %esi,0x6c(%eax)
40ab77:	72 2f                	jb     0x40aba8
40ab79:	50                   	push   %eax
40ab7a:	8d 78 20             	lea    0x20(%eax),%edi
40ab7d:	31 c0                	xor    %eax,%eax
40ab7f:	ac                   	lods   %ds:(%esi),%al
40ab80:	89 47 4c             	mov    %eax,0x4c(%edi)
40ab83:	31 c9                	xor    %ecx,%ecx
40ab85:	b1 26                	mov    $0x26,%cl
40ab87:	80 3e c8             	cmpb   $0xc8,(%esi)
40ab8a:	72 03                	jb     0x40ab8f
40ab8c:	77 07                	ja     0x40ab95
40ab8e:	46                   	inc    %esi
40ab8f:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
40ab91:	e2 f4                	loop   0x40ab87
40ab93:	eb 12                	jmp    0x40aba7
40ab95:	ac                   	lods   %ds:(%esi),%al
40ab96:	2c c8                	sub    $0xc8,%al
40ab98:	28 c1                	sub    %al,%cl
40ab9a:	51                   	push   %ecx
40ab9b:	0f b6 c8             	movzbl %al,%ecx
40ab9e:	31 c0                	xor    %eax,%eax
40aba0:	f3 66 ab             	rep stos %ax,%es:(%edi)
40aba3:	59                   	pop    %ecx
40aba4:	41                   	inc    %ecx
40aba5:	e2 e0                	loop   0x40ab87
40aba7:	58                   	pop    %eax
40aba8:	5f                   	pop    %edi
40aba9:	5e                   	pop    %esi
40abaa:	c3                   	ret