40d93d:	e8 1e 5f ff ff       	call   0x403860
40d942:	8b 14 24             	mov    (%esp),%edx
40d945:	8b 44 24 04          	mov    0x4(%esp),%eax
40d949:	e8 ae 5f ff ff       	call   0x4038fc
40d94e:	e8 f1 76 ff ff       	call   0x405044
40d953:	58                   	pop    %eax
40d954:	c3                   	ret
40d955:	8d 40 00             	lea    0x0(%eax),%eax
40d958:	3a 5c 2f 00          	cmp    0x0(%edi,%ebp,1),%bl
40d95c:	52                   	push   %edx
40d95d:	50                   	push   %eax
40d95e:	8b 15 80 64 42 00    	mov    0x426480,%edx
40d964:	e8 33 ff ff ff       	call   0x40d89c
40d969:	5a                   	pop    %edx
40d96a:	80 38 00             	cmpb   $0x0,(%eax)
40d96d:	74 02                	je     0x40d971
40d96f:	92                   	xchg   %eax,%edx
40d970:	42                   	inc    %edx
40d971:	58                   	pop    %eax
40d972:	e8 f9 5e ff ff       	call   0x403870
40d977:	c3                   	ret
40d978:	2e 00 00             	add    %al,%cs:(%eax)
40d97b:	00 52 8b             	add    %dl,-0x75(%edx)
40d97e:	15 84 64 42 00       	adc    $0x426484,%eax
40d983:	e8 a4 76 ff ff       	call   0x40502c
40d988:	e8 0f ff ff ff       	call   0x40d89c
40d98d:	92                   	xchg   %eax,%edx
40d98e:	58                   	pop    %eax
40d98f:	e8 dc 5e ff ff       	call   0x403870
40d994:	c3                   	ret
40d995:	8d 40 00             	lea    0x0(%eax),%eax
40d998:	53                   	push   %ebx
40d999:	93                   	xchg   %eax,%ebx
40d99a:	81 ec 04 01 00 00    	sub    $0x104,%esp
40d9a0:	89 e0                	mov    %esp,%eax
40d9a2:	68 04 01 00 00       	push   $0x104
40d9a7:	50                   	push   %eax
40d9a8:	e8 47 75 ff ff       	call   0x404ef4
40d9ad:	89 d8                	mov    %ebx,%eax
40d9af:	89 e2                	mov    %esp,%edx
40d9b1:	e8 ba 5e ff ff       	call   0x403870
40d9b6:	89 da                	mov    %ebx,%edx
40d9b8:	8b 02                	mov    (%edx),%eax
40d9ba:	e8 a5 82 ff ff       	call   0x405c64
40d9bf:	81 c4 04 01 00 00    	add    $0x104,%esp
40d9c5:	5b                   	pop    %ebx
40d9c6:	c3                   	ret
40d9c7:	90                   	nop
40d9c8:	53                   	push   %ebx
40d9c9:	93                   	xchg   %eax,%ebx
40d9ca:	81 ec 04 01 00 00    	sub    $0x104,%esp
40d9d0:	89 e0                	mov    %esp,%eax
40d9d2:	68 04 01 00 00       	push   $0x104
40d9d7:	50                   	push   %eax
40d9d8:	e8 37 75 ff ff       	call   0x404f14
40d9dd:	89 d8                	mov    %ebx,%eax
40d9df:	89 e2                	mov    %esp,%edx
40d9e1:	e8 8a 5e ff ff       	call   0x403870
40d9e6:	89 da                	mov    %ebx,%edx
40d9e8:	8b 02                	mov    (%edx),%eax
40d9ea:	e8 75 82 ff ff       	call   0x405c64
40d9ef:	81 c4 04 01 00 00    	add    $0x104,%esp
40d9f5:	5b                   	pop    %ebx
40d9f6:	c3                   	ret
40d9f7:	90                   	nop
40d9f8:	50                   	push   %eax
40d9f9:	81 ec 08 01 00 00    	sub    $0x108,%esp
40d9ff:	54                   	push   %esp
40da00:	68 05 01 00 00       	push   $0x105
40da05:	e8 f2 74 ff ff       	call   0x404efc
40da0a:	89 e2                	mov    %esp,%edx
40da0c:	8b 84 24 08 01 00 00 	mov    0x108(%esp),%eax
40da13:	e8 58 5e ff ff       	call   0x403870
40da18:	81 c4 08 01 00 00    	add    $0x108,%esp
40da1e:	5a                   	pop    %edx
40da1f:	8b 02                	mov    (%edx),%eax
40da21:	e8 3e 82 ff ff       	call   0x405c64
40da26:	c3                   	ret
40da27:	90                   	nop
40da28:	92                   	xchg   %eax,%edx
40da29:	50                   	push   %eax
40da2a:	e8 b9 5c ff ff       	call   0x4036e8
40da2f:	58                   	pop    %eax
40da30:	83 38 00             	cmpl   $0x0,(%eax)
40da33:	75 10                	jne    0x40da45
40da35:	8d 15 41 da 40 00    	lea    0x40da41,%edx
40da3b:	0f 84 2f 5e ff ff    	je     0x403870
40da41:	2a 2e                	sub    (%esi),%ch
40da43:	2a 00                	sub    (%eax),%al
40da45:	c3                   	ret
40da46:	8b c0                	mov    %eax,%eax
40da48:	55                   	push   %ebp
40da49:	8b ec                	mov    %esp,%ebp
40da4b:	53                   	push   %ebx
40da4c:	50                   	push   %eax
40da4d:	51                   	push   %ecx
40da4e:	0f b6 4d 0c          	movzbl 0xc(%ebp),%ecx
40da52:	ff 75 08             	push   0x8(%ebp)
40da55:	e8 62 d1 ff ff       	call   0x40abbc
40da5a:	93                   	xchg   %eax,%ebx
40da5b:	80 4b 36 08          	orb    $0x8,0x36(%ebx)
40da5f:	5a                   	pop    %edx
40da60:	81 ca 00 00 00 06    	or     $0x6000000,%edx
40da66:	c6 43 3c 0f          	movb   $0xf,0x3c(%ebx)
40da6a:	f6 83 b5 00 00 00 01 	testb  $0x1,0xb5(%ebx)
40da71:	74 0a                	je     0x40da7d
40da73:	81 e2 ff ff 7f ff    	and    $0xff7fffff,%edx
40da79:	80 4b 29 02          	orb    $0x2,0x29(%ebx)
40da7d:	89 53 24             	mov    %edx,0x24(%ebx)
40da80:	59                   	pop    %ecx
40da81:	e3 65                	jecxz  0x40dae8
40da83:	56                   	push   %esi
40da84:	57                   	push   %edi
40da85:	51                   	push   %ecx
40da86:	8d b1 b0 00 00 00    	lea    0xb0(%ecx),%esi
40da8c:	8d bb b6 00 00 00    	lea    0xb6(%ebx),%edi
40da92:	ac                   	lods   %ds:(%esi),%al
40da93:	0f be c0             	movsbl %al,%eax
40da96:	50                   	push   %eax
40da97:	0f be 4e 02          	movsbl 0x2(%esi),%ecx
40da9b:	01 c8                	add    %ecx,%eax
40da9d:	ab                   	stos   %eax,%es:(%edi)
40da9e:	58                   	pop    %eax
40da9f:	50                   	push   %eax
40daa0:	0f be 0e             	movsbl (%esi),%ecx
40daa3:	01 c8                	add    %ecx,%eax
40daa5:	ab                   	stos   %eax,%es:(%edi)
40daa6:	92                   	xchg   %eax,%edx
40daa7:	58                   	pop    %eax
40daa8:	83 c0 40             	add    $0x40,%eax
40daab:	ab                   	stos   %eax,%es:(%edi)
40daac:	92                   	xchg   %eax,%edx
40daad:	83 c0 40             	add    $0x40,%eax
40dab0:	ab                   	stos   %eax,%es:(%edi)
40dab1:	59                   	pop    %ecx
40dab2:	8b 81 c6 00 00 00    	mov    0xc6(%ecx),%eax
40dab8:	ab                   	stos   %eax,%es:(%edi)
40dab9:	5f                   	pop    %edi
40daba:	5e                   	pop    %esi
40dabb:	91                   	xchg   %eax,%ecx
40dabc:	e8 7f e4 ff ff       	call   0x40bf40
40dac1:	91                   	xchg   %eax,%ecx
40dac2:	e3 24                	jecxz  0x40dae8
40dac4:	66 ff 41 3d          	incw   0x3d(%ecx)
40dac8:	66 8b 51 3d          	mov    0x3d(%ecx),%dx
40dacc:	66 89 53 3d          	mov    %dx,0x3d(%ebx)
40dad0:	f7 43 24 00 00 01 00 	testl  $0x10000,0x24(%ebx)
40dad7:	74 0f                	je     0x40dae8
40dad9:	83 b9 f2 00 00 00 00 	cmpl   $0x0,0xf2(%ecx)
40dae0:	75 06                	jne    0x40dae8
40dae2:	89 99 f2 00 00 00    	mov    %ebx,0xf2(%ecx)
40dae8:	0f b7 15 68 62 42 00 	movzwl 0x426268,%edx
40daef:	66 ff 05 68 62 42 00 	incw   0x426268
40daf6:	89 93 84 00 00 00    	mov    %edx,0x84(%ebx)
40dafc:	ba f0 bd 40 00       	mov    $0x40bdf0,%edx
40db01:	89 d8                	mov    %ebx,%eax
40db03:	e8 30 bf ff ff       	call   0x409a38
40db08:	93                   	xchg   %eax,%ebx
40db09:	5b                   	pop    %ebx
40db0a:	5d                   	pop    %ebp
40db0b:	c2 08 00             	ret    $0x8
40db0e:	8b c0                	mov    %eax,%eax
40db10:	52                   	push   %edx
40db11:	6a 00                	push   $0x0
40db13:	ff 35 74 61 42 00    	push   0x426174
40db19:	b9 8c 01 00 50       	mov    $0x5000018c,%ecx
40db1e:	ba 88 64 42 00       	mov    $0x426488,%edx
40db23:	e8 20 ff ff ff       	call   0x40da48
40db28:	66 c7 80 38 01 00 00 	movw   $0x101,0x138(%eax)
40db2f:	01 01
40db31:	80 48 34 30          	orb    $0x30,0x34(%eax)
40db35:	8b 90 ba 00 00 00    	mov    0xba(%eax),%edx
40db3b:	83 c2 16             	add    $0x16,%edx
40db3e:	89 90 c2 00 00 00    	mov    %edx,0xc2(%eax)
40db44:	5a                   	pop    %edx
40db45:	50                   	push   %eax
40db46:	e8 21 dd ff ff       	call   0x40b86c
40db4b:	58                   	pop    %eax
40db4c:	c3                   	ret
40db4d:	8d 40 00             	lea    0x0(%eax),%eax
40db50:	52                   	push   %edx
40db51:	6a 00                	push   $0x0
40db53:	ff 35 70 61 42 00    	push   0x426170
40db59:	ba c8 61 42 00       	mov    $0x4261c8,%edx
40db5e:	b9 07 00 00 56       	mov    $0x56000007,%ecx
40db63:	e8 e0 fe ff ff       	call   0x40da48
40db68:	81 48 28 00 00 01 00 	orl    $0x10000,0x28(%eax)
40db6f:	8b 90 b6 00 00 00    	mov    0xb6(%eax),%edx
40db75:	83 c2 64             	add    $0x64,%edx
40db78:	89 90 be 00 00 00    	mov    %edx,0xbe(%eax)
40db7e:	8b 90 ba 00 00 00    	mov    0xba(%eax),%edx
40db84:	83 c2 64             	add    $0x64,%edx
40db87:	89 90 c2 00 00 00    	mov    %edx,0xc2(%eax)
40db8d:	c6 80 b1 00 00 00 16 	movb   $0x16,0xb1(%eax)
40db94:	31 d2                	xor    %edx,%edx
40db96:	80 60 26 fe          	andb   $0xfe,0x26(%eax)
40db9a:	b2 02                	mov    $0x2,%dl
40db9c:	00 90 b2 00 00 00    	add    %dl,0xb2(%eax)
40dba2:	00 90 b3 00 00 00    	add    %dl,0xb3(%eax)
40dba8:	00 90 b4 00 00 00    	add    %dl,0xb4(%eax)
40dbae:	5a                   	pop    %edx
40dbaf:	50                   	push   %eax
40dbb0:	e8 b7 dc ff ff       	call   0x40b86c
40dbb5:	58                   	pop    %eax
40dbb6:	50                   	push   %eax
40dbb7:	80 48 38 08          	orb    $0x8,0x38(%eax)
40dbbb:	ba ec ad 40 00       	mov    $0x40adec,%edx
40dbc0:	e8 73 be ff ff       	call   0x409a38
40dbc5:	58                   	pop    %eax
40dbc6:	c3                   	ret
40dbc7:	90                   	nop
40dbc8:	52                   	push   %edx
40dbc9:	ba 88 64 42 00       	mov    $0x426488,%edx
40dbce:	b9 8c 01 00 50       	mov    $0x5000018c,%ecx
40dbd3:	6a 00                	push   $0x0
40dbd5:	ff 35 74 61 42 00    	push   0x426174
40dbdb:	e8 68 fe ff ff       	call   0x40da48
40dbe0:	66 c7 80 38 01 00 00 	movw   $0x101,0x138(%eax)
40dbe7:	01 01
40dbe9:	83 80 be 00 00 00 24 	addl   $0x24,0xbe(%eax)
40dbf0:	83 80 c2 00 00 00 24 	addl   $0x24,0xc2(%eax)
40dbf7:	80 48 2a 01          	orb    $0x1,0x2a(%eax)
40dbfb:	59                   	pop    %ecx
40dbfc:	80 f9 01             	cmp    $0x1,%cl
40dbff:	7f 0b                	jg     0x40dc0c
40dc01:	74 05                	je     0x40dc08
40dc03:	80 48 26 40          	orb    $0x40,0x26(%eax)
40dc07:	c3                   	ret
40dc08:	80 48 25 10          	orb    $0x10,0x25(%eax)
40dc0c:	c3                   	ret
40dc0d:	8d 40 00             	lea    0x0(%eax),%eax
40dc10:	57                   	push   %edi
40dc11:	53                   	push   %ebx
40dc12:	93                   	xchg   %eax,%ebx
40dc13:	6a 05                	push   $0x5
40dc15:	ff 73 1c             	push   0x1c(%ebx)
40dc18:	e8 73 6e ff ff       	call   0x404a90
40dc1d:	85 c0                	test   %eax,%eax
40dc1f:	74 1f                	je     0x40dc40
40dc21:	68 18 73 40 00       	push   $0x407318
40dc26:	6a fc                	push   $0xfffffffc
40dc28:	50                   	push   %eax
40dc29:	97                   	xchg   %eax,%edi
40dc2a:	e8 dd 73 ff ff       	call   0x40500c
40dc2f:	50                   	push   %eax
40dc30:	68 1c 61 42 00       	push   $0x42611c
40dc35:	57                   	push   %edi
40dc36:	e8 c9 73 ff ff       	call   0x405004
40dc3b:	6a 02                	push   $0x2
40dc3d:	57                   	push   %edi
40dc3e:	eb d8                	jmp    0x40dc18
40dc40:	5b                   	pop    %ebx
40dc41:	5f                   	pop    %edi
40dc42:	c3                   	ret
40dc43:	90                   	nop
40dc44:	8b 48 1c             	mov    0x1c(%eax),%ecx
40dc47:	e3 02                	jecxz  0x40dc4b
40dc49:	91                   	xchg   %eax,%ecx
40dc4a:	c3                   	ret
40dc4b:	53                   	push   %ebx
40dc4c:	89 c3                	mov    %eax,%ebx
40dc4e:	f6 43 37 08          	testb  $0x8,0x37(%ebx)
40dc52:	75 14                	jne    0x40dc68
40dc54:	31 d2                	xor    %edx,%edx
40dc56:	e8 59 dc ff ff       	call   0x40b8b4
40dc5b:	89 d8                	mov    %ebx,%eax
40dc5d:	e8 12 77 ff ff       	call   0x405374
40dc62:	80 4b 37 01          	orb    $0x1,0x37(%ebx)
40dc66:	eb 05                	jmp    0x40dc6d
40dc68:	e8 07 77 ff ff       	call   0x405374
40dc6d:	8b 43 1c             	mov    0x1c(%ebx),%eax
40dc70:	5b                   	pop    %ebx
40dc71:	c3                   	ret
40dc72:	8b c0                	mov    %eax,%eax
40dc74:	53                   	push   %ebx
40dc75:	93                   	xchg   %eax,%ebx
40dc76:	8b 4b 30             	mov    0x30(%ebx),%ecx
40dc79:	e3 0a                	jecxz  0x40dc85
40dc7b:	91                   	xchg   %eax,%ecx
40dc7c:	e8 c3 ff ff ff       	call   0x40dc44
40dc81:	85 c0                	test   %eax,%eax
40dc83:	74 28                	je     0x40dcad
40dc85:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
40dc88:	e3 25                	jecxz  0x40dcaf
40dc8a:	89 d8                	mov    %ebx,%eax
40dc8c:	f6 43 37 01          	testb  $0x1,0x37(%ebx)
40dc90:	74 14                	je     0x40dca6
40dc92:	e8 a5 a0 ff ff       	call   0x407d3c
40dc97:	89 d8                	mov    %ebx,%eax
40dc99:	b2 01                	mov    $0x1,%dl
40dc9b:	e8 14 dc ff ff       	call   0x40b8b4
40dca0:	80 63 37 fe          	andb   $0xfe,0x37(%ebx)
40dca4:	eb 05                	jmp    0x40dcab
40dca6:	e8 91 a0 ff ff       	call   0x407d3c
40dcab:	b0 01                	mov    $0x1,%al
40dcad:	5b                   	pop    %ebx
40dcae:	c3                   	ret
40dcaf:	55                   	push   %ebp
40dcb0:	89 e5                	mov    %esp,%ebp
40dcb2:	51                   	push   %ecx
40dcb3:	51                   	push   %ecx
40dcb4:	51                   	push   %ecx
40dcb5:	68 00 7f 00 00       	push   $0x7f00
40dcba:	51                   	push   %ecx
40dcbb:	e8 04 73 ff ff       	call   0x404fc4
40dcc0:	50                   	push   %eax
40dcc1:	31 c9                	xor    %ecx,%ecx
40dcc3:	51                   	push   %ecx
40dcc4:	ff 35 50 96 42 00    	push   0x429650
40dcca:	51                   	push   %ecx
40dccb:	51                   	push   %ecx
40dccc:	ff 73 2c             	push   0x2c(%ebx)
40dccf:	ff 73 20             	push   0x20(%ebx)
40dcd2:	83 c4 c0             	add    $0xffffffc0,%esp
40dcd5:	51                   	push   %ecx
40dcd6:	89 d8                	mov    %ebx,%eax
40dcd8:	89 e2                	mov    %esp,%edx
40dcda:	e8 29 02 00 00       	call   0x40df08
40dcdf:	5a                   	pop    %edx
40dce0:	89 e0                	mov    %esp,%eax
40dce2:	52                   	push   %edx
40dce3:	e8 9c 7a ff ff       	call   0x405784
40dce8:	e8 57 73 ff ff       	call   0x405044
40dced:	6a 00                	push   $0x0
40dcef:	ff 35 50 96 42 00    	push   0x429650
40dcf5:	ff b3 84 00 00 00    	push   0x84(%ebx)
40dcfb:	b2 01                	mov    $0x1,%dl
40dcfd:	89 d8                	mov    %ebx,%eax
40dcff:	e8 f0 df ff ff       	call   0x40bcf4
40dd04:	50                   	push   %eax
40dd05:	b9 00 00 00 80       	mov    $0x80000000,%ecx
40dd0a:	8b 83 c2 00 00 00    	mov    0xc2(%ebx),%eax
40dd10:	8b 93 ba 00 00 00    	mov    0xba(%ebx),%edx
40dd16:	29 d0                	sub    %edx,%eax
40dd18:	75 02                	jne    0x40dd1c
40dd1a:	89 c8                	mov    %ecx,%eax
40dd1c:	50                   	push   %eax
40dd1d:	8b 83 be 00 00 00    	mov    0xbe(%ebx),%eax
40dd23:	2b 83 b6 00 00 00    	sub    0xb6(%ebx),%eax
40dd29:	75 02                	jne    0x40dd2d
40dd2b:	89 c8                	mov    %ecx,%eax
40dd2d:	50                   	push   %eax
40dd2e:	8b 83 b6 00 00 00    	mov    0xb6(%ebx),%eax
40dd34:	f6 43 36 08          	testb  $0x8,0x36(%ebx)
40dd38:	75 09                	jne    0x40dd43
40dd3a:	f6 43 35 20          	testb  $0x20,0x35(%ebx)
40dd3e:	75 03                	jne    0x40dd43
40dd40:	89 ca                	mov    %ecx,%edx
40dd42:	91                   	xchg   %eax,%ecx
40dd43:	52                   	push   %edx