43cc76:	8b d6                	mov    %esi,%edx
43cc78:	4a                   	dec    %edx
43cc79:	8b c5                	mov    %ebp,%eax
43cc7b:	e8 b8 0f 00 00       	call   0x43dc38
43cc80:	8b f8                	mov    %eax,%edi
43cc82:	8b d7                	mov    %edi,%edx
43cc84:	8b c5                	mov    %ebp,%eax
43cc86:	e8 d1 0d 00 00       	call   0x43da5c
43cc8b:	b2 01                	mov    $0x1,%dl
43cc8d:	8b c7                	mov    %edi,%eax
43cc8f:	8b 08                	mov    (%eax),%ecx
43cc91:	ff 51 fc             	call   *-0x4(%ecx)
43cc94:	8b c5                	mov    %ebp,%eax
43cc96:	e8 d9 0f 00 00       	call   0x43dc74
43cc9b:	8b f0                	mov    %eax,%esi
43cc9d:	85 f6                	test   %esi,%esi
43cc9f:	75 d5                	jne    0x43cc76
43cca1:	8b 85 a4 01 00 00    	mov    0x1a4(%ebp),%eax
43cca7:	e8 48 6c fc ff       	call   0x4038f4
43ccac:	8b 85 c0 01 00 00    	mov    0x1c0(%ebp),%eax
43ccb2:	85 c0                	test   %eax,%eax
43ccb4:	74 05                	je     0x43ccbb
43ccb6:	e8 65 1e fe ff       	call   0x41eb20
43ccbb:	8b 85 a0 01 00 00    	mov    0x1a0(%ebp),%eax
43ccc1:	e8 2e 6c fc ff       	call   0x4038f4
43ccc6:	8b d3                	mov    %ebx,%edx
43ccc8:	80 e2 fc             	and    $0xfc,%dl
43cccb:	8b c5                	mov    %ebp,%eax
43cccd:	e8 2a c1 ff ff       	call   0x438dfc
43ccd2:	84 db                	test   %bl,%bl
43ccd4:	7e 07                	jle    0x43ccdd
43ccd6:	8b c5                	mov    %ebp,%eax
43ccd8:	e8 8b 6f fc ff       	call   0x403c68
43ccdd:	5d                   	pop    %ebp
43ccde:	5f                   	pop    %edi
43ccdf:	5e                   	pop    %esi
43cce0:	5b                   	pop    %ebx
43cce1:	c3                   	ret
43cce2:	8b c0                	mov    %eax,%eax
43cce4:	55                   	push   %ebp
43cce5:	8b ec                	mov    %esp,%ebp
43cce7:	83 c4 f4             	add    $0xfffffff4,%esp
43ccea:	53                   	push   %ebx
43cceb:	56                   	push   %esi
43ccec:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ccef:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ccf2:	83 b8 d0 01 00 00 00 	cmpl   $0x0,0x1d0(%eax)
43ccf9:	0f 84 b0 00 00 00    	je     0x43cdaf
43ccff:	b2 01                	mov    $0x1,%dl
43cd01:	a1 c4 57 41 00       	mov    0x4157c4,%eax
43cd06:	e8 b9 6b fc ff       	call   0x4038c4
43cd0b:	89 45 f4             	mov    %eax,-0xc(%ebp)
43cd0e:	33 c9                	xor    %ecx,%ecx
43cd10:	55                   	push   %ebp
43cd11:	68 a8 cd 43 00       	push   $0x43cda8
43cd16:	64 ff 31             	push   %fs:(%ecx)
43cd19:	64 89 21             	mov    %esp,%fs:(%ecx)
43cd1c:	8b 45 fc             	mov    -0x4(%ebp),%eax
43cd1f:	8b 80 d0 01 00 00    	mov    0x1d0(%eax),%eax
43cd25:	8b 40 08             	mov    0x8(%eax),%eax
43cd28:	89 45 f8             	mov    %eax,-0x8(%ebp)
43cd2b:	8b 55 f8             	mov    -0x8(%ebp),%edx
43cd2e:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cd31:	e8 da af fd ff       	call   0x417d10
43cd36:	8b 5d f8             	mov    -0x8(%ebp),%ebx
43cd39:	4b                   	dec    %ebx
43cd3a:	85 db                	test   %ebx,%ebx
43cd3c:	7c 30                	jl     0x43cd6e
43cd3e:	43                   	inc    %ebx
43cd3f:	33 f6                	xor    %esi,%esi
43cd41:	8b 45 fc             	mov    -0x4(%ebp),%eax
43cd44:	8b 80 d0 01 00 00    	mov    0x1d0(%eax),%eax
43cd4a:	8b d6                	mov    %esi,%edx
43cd4c:	e8 1f ae fd ff       	call   0x417b70
43cd51:	8b 90 d4 01 00 00    	mov    0x1d4(%eax),%edx
43cd57:	85 d2                	test   %edx,%edx
43cd59:	7c 0f                	jl     0x43cd6a
43cd5b:	3b 55 f8             	cmp    -0x8(%ebp),%edx
43cd5e:	7d 0a                	jge    0x43cd6a
43cd60:	8b c8                	mov    %eax,%ecx
43cd62:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cd65:	e8 fa ae fd ff       	call   0x417c64
43cd6a:	46                   	inc    %esi
43cd6b:	4b                   	dec    %ebx
43cd6c:	75 d3                	jne    0x43cd41
43cd6e:	8b 5d f8             	mov    -0x8(%ebp),%ebx
43cd71:	4b                   	dec    %ebx
43cd72:	85 db                	test   %ebx,%ebx
43cd74:	7c 1c                	jl     0x43cd92
43cd76:	43                   	inc    %ebx
43cd77:	33 f6                	xor    %esi,%esi
43cd79:	8b d6                	mov    %esi,%edx
43cd7b:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cd7e:	e8 ed ad fd ff       	call   0x417b70
43cd83:	85 c0                	test   %eax,%eax
43cd85:	74 07                	je     0x43cd8e
43cd87:	8b d6                	mov    %esi,%edx
43cd89:	e8 52 4d 00 00       	call   0x441ae0
43cd8e:	46                   	inc    %esi
43cd8f:	4b                   	dec    %ebx
43cd90:	75 e7                	jne    0x43cd79
43cd92:	33 c0                	xor    %eax,%eax
43cd94:	5a                   	pop    %edx
43cd95:	59                   	pop    %ecx
43cd96:	59                   	pop    %ecx
43cd97:	64 89 10             	mov    %edx,%fs:(%eax)
43cd9a:	68 af cd 43 00       	push   $0x43cdaf
43cd9f:	8b 45 f4             	mov    -0xc(%ebp),%eax
43cda2:	e8 4d 6b fc ff       	call   0x4038f4
43cda7:	c3                   	ret
43cda8:	e9 db 72 fc ff       	jmp    0x404088
43cdad:	eb f0                	jmp    0x43cd9f
43cdaf:	5e                   	pop    %esi
43cdb0:	5b                   	pop    %ebx
43cdb1:	8b e5                	mov    %ebp,%esp
43cdb3:	5d                   	pop    %ebp
43cdb4:	c3                   	ret
43cdb5:	8d 40 00             	lea    0x0(%eax),%eax
43cdb8:	55                   	push   %ebp
43cdb9:	8b ec                	mov    %esp,%ebp
43cdbb:	51                   	push   %ecx
43cdbc:	53                   	push   %ebx
43cdbd:	8b da                	mov    %edx,%ebx
43cdbf:	89 45 fc             	mov    %eax,-0x4(%ebp)
43cdc2:	8b 45 fc             	mov    -0x4(%ebp),%eax
43cdc5:	e8 c6 09 00 00       	call   0x43d790
43cdca:	33 c0                	xor    %eax,%eax
43cdcc:	55                   	push   %ebp
43cdcd:	68 f8 cd 43 00       	push   $0x43cdf8
43cdd2:	64 ff 30             	push   %fs:(%eax)
43cdd5:	64 89 20             	mov    %esp,%fs:(%eax)
43cdd8:	8b d3                	mov    %ebx,%edx
43cdda:	8b 45 fc             	mov    -0x4(%ebp),%eax
43cddd:	e8 52 c3 ff ff       	call   0x439134
43cde2:	33 c0                	xor    %eax,%eax
43cde4:	5a                   	pop    %edx
43cde5:	59                   	pop    %ecx
43cde6:	59                   	pop    %ecx
43cde7:	64 89 10             	mov    %edx,%fs:(%eax)
43cdea:	68 ff cd 43 00       	push   $0x43cdff
43cdef:	8b 45 fc             	mov    -0x4(%ebp),%eax
43cdf2:	e8 a1 09 00 00       	call   0x43d798
43cdf7:	c3                   	ret
43cdf8:	e9 8b 72 fc ff       	jmp    0x404088
43cdfd:	eb f0                	jmp    0x43cdef
43cdff:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ce02:	e8 dd fe ff ff       	call   0x43cce4
43ce07:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ce0a:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
43ce0e:	74 11                	je     0x43ce21
43ce10:	6a 00                	push   $0x0
43ce12:	33 c9                	xor    %ecx,%ecx
43ce14:	ba 11 b0 00 00       	mov    $0xb011,%edx
43ce19:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ce1c:	e8 fb e2 ff ff       	call   0x43b11c
43ce21:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ce24:	e8 1b 19 00 00       	call   0x43e744
43ce29:	5b                   	pop    %ebx
43ce2a:	59                   	pop    %ecx
43ce2b:	5d                   	pop    %ebp
43ce2c:	c3                   	ret
43ce2d:	8d 40 00             	lea    0x0(%eax),%eax
43ce30:	8b 88 a0 01 00 00    	mov    0x1a0(%eax),%ecx
43ce36:	8b 49 08             	mov    0x8(%ecx),%ecx
43ce39:	01 0a                	add    %ecx,(%edx)
43ce3b:	8b 88 a0 01 00 00    	mov    0x1a0(%eax),%ecx
43ce41:	8b 49 0c             	mov    0xc(%ecx),%ecx
43ce44:	01 4a 04             	add    %ecx,0x4(%edx)
43ce47:	8b 88 a0 01 00 00    	mov    0x1a0(%eax),%ecx
43ce4d:	8b 49 10             	mov    0x10(%ecx),%ecx
43ce50:	29 4a 08             	sub    %ecx,0x8(%edx)
43ce53:	8b 80 a0 01 00 00    	mov    0x1a0(%eax),%eax
43ce59:	8b 40 14             	mov    0x14(%eax),%eax
43ce5c:	29 42 0c             	sub    %eax,0xc(%edx)
43ce5f:	c3                   	ret
43ce60:	55                   	push   %ebp
43ce61:	8b ec                	mov    %esp,%ebp
43ce63:	83 c4 dc             	add    $0xffffffdc,%esp
43ce66:	53                   	push   %ebx
43ce67:	56                   	push   %esi
43ce68:	57                   	push   %edi
43ce69:	8b 75 10             	mov    0x10(%ebp),%esi
43ce6c:	8d 7d dc             	lea    -0x24(%ebp),%edi
43ce6f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ce70:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ce71:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ce72:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ce73:	8b d9                	mov    %ecx,%ebx
43ce75:	8b f2                	mov    %edx,%esi
43ce77:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ce7a:	8b 7d 0c             	mov    0xc(%ebp),%edi
43ce7d:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
43ce81:	74 14                	je     0x43ce97
43ce83:	0f b6 45 14          	movzbl 0x14(%ebp),%eax
43ce87:	0f b6 80 64 14 46 00 	movzbl 0x461464(%eax),%eax
43ce8e:	3a 46 61             	cmp    0x61(%esi),%al
43ce91:	0f 84 b9 01 00 00    	je     0x43d050
43ce97:	83 be 75 01 00 00 00 	cmpl   $0x0,0x175(%esi)
43ce9e:	0f 84 a2 01 00 00    	je     0x43d046
43cea4:	83 be 79 01 00 00 00 	cmpl   $0x0,0x179(%esi)
43ceab:	0f 84 95 01 00 00    	je     0x43d046
43ceb1:	33 d2                	xor    %edx,%edx
43ceb3:	8b 46 78             	mov    0x78(%esi),%eax
43ceb6:	8b 08                	mov    (%eax),%ecx
43ceb8:	ff 51 10             	call   *0x10(%ecx)
43cebb:	89 45 f8             	mov    %eax,-0x8(%ebp)
43cebe:	ba 01 00 00 00       	mov    $0x1,%edx
43cec3:	8b 46 78             	mov    0x78(%esi),%eax
43cec6:	8b 08                	mov    (%eax),%ecx
43cec8:	ff 51 10             	call   *0x10(%ecx)
43cecb:	89 45 f4             	mov    %eax,-0xc(%ebp)
43cece:	ba 02 00 00 00       	mov    $0x2,%edx
43ced3:	8b 46 78             	mov    0x78(%esi),%eax
43ced6:	8b 08                	mov    (%eax),%ecx
43ced8:	ff 51 10             	call   *0x10(%ecx)
43cedb:	89 45 f0             	mov    %eax,-0x10(%ebp)
43cede:	ba 03 00 00 00       	mov    $0x3,%edx
43cee3:	8b 46 78             	mov    0x78(%esi),%eax
43cee6:	8b 08                	mov    (%eax),%ecx
43cee8:	ff 51 10             	call   *0x10(%ecx)
43ceeb:	89 45 ec             	mov    %eax,-0x14(%ebp)
43ceee:	f6 46 61 04          	testb  $0x4,0x61(%esi)
43cef2:	74 30                	je     0x43cf24
43cef4:	f6 46 61 01          	testb  $0x1,0x61(%esi)
43cef8:	74 15                	je     0x43cf0f
43cefa:	8b 03                	mov    (%ebx),%eax
43cefc:	8b 96 75 01 00 00    	mov    0x175(%esi),%edx
43cf02:	2b 96 65 01 00 00    	sub    0x165(%esi),%edx
43cf08:	2b c2                	sub    %edx,%eax
43cf0a:	89 45 f0             	mov    %eax,-0x10(%ebp)
43cf0d:	eb 40                	jmp    0x43cf4f
43cf0f:	8b 03                	mov    (%ebx),%eax
43cf11:	8b 96 75 01 00 00    	mov    0x175(%esi),%edx
43cf17:	2b 96 65 01 00 00    	sub    0x165(%esi),%edx
43cf1d:	2b c2                	sub    %edx,%eax
43cf1f:	89 45 f8             	mov    %eax,-0x8(%ebp)
43cf22:	eb 2b                	jmp    0x43cf4f
43cf24:	f6 46 61 01          	testb  $0x1,0x61(%esi)
43cf28:	75 25                	jne    0x43cf4f
43cf2a:	8b 86 75 01 00 00    	mov    0x175(%esi),%eax
43cf30:	50                   	push   %eax
43cf31:	8b 03                	mov    (%ebx),%eax
43cf33:	50                   	push   %eax
43cf34:	8b 86 65 01 00 00    	mov    0x165(%esi),%eax
43cf3a:	50                   	push   %eax
43cf3b:	e8 30 9b fc ff       	call   0x406a70
43cf40:	8b 55 f0             	mov    -0x10(%ebp),%edx
43cf43:	d1 fa                	sar    $1,%edx
43cf45:	79 03                	jns    0x43cf4a
43cf47:	83 d2 00             	adc    $0x0,%edx
43cf4a:	2b c2                	sub    %edx,%eax
43cf4c:	89 45 f8             	mov    %eax,-0x8(%ebp)
43cf4f:	f6 46 61 08          	testb  $0x8,0x61(%esi)
43cf53:	74 32                	je     0x43cf87
43cf55:	f6 46 61 02          	testb  $0x2,0x61(%esi)
43cf59:	74 16                	je     0x43cf71
43cf5b:	8b 43 04             	mov    0x4(%ebx),%eax
43cf5e:	8b 96 79 01 00 00    	mov    0x179(%esi),%edx
43cf64:	2b 96 69 01 00 00    	sub    0x169(%esi),%edx
43cf6a:	2b c2                	sub    %edx,%eax
43cf6c:	89 45 ec             	mov    %eax,-0x14(%ebp)
43cf6f:	eb 42                	jmp    0x43cfb3
43cf71:	8b 43 04             	mov    0x4(%ebx),%eax
43cf74:	8b 96 79 01 00 00    	mov    0x179(%esi),%edx
43cf7a:	2b 96 69 01 00 00    	sub    0x169(%esi),%edx
43cf80:	2b c2                	sub    %edx,%eax
43cf82:	89 45 f4             	mov    %eax,-0xc(%ebp)
43cf85:	eb 2c                	jmp    0x43cfb3
43cf87:	f6 46 61 02          	testb  $0x2,0x61(%esi)
43cf8b:	75 26                	jne    0x43cfb3
43cf8d:	8b 86 79 01 00 00    	mov    0x179(%esi),%eax
43cf93:	50                   	push   %eax
43cf94:	8b 43 04             	mov    0x4(%ebx),%eax
43cf97:	50                   	push   %eax
43cf98:	8b 86 69 01 00 00    	mov    0x169(%esi),%eax
43cf9e:	50                   	push   %eax
43cf9f:	e8 cc 9a fc ff       	call   0x406a70
43cfa4:	8b 55 ec             	mov    -0x14(%ebp),%edx
43cfa7:	d1 fa                	sar    $1,%edx
43cfa9:	79 03                	jns    0x43cfae
43cfab:	83 d2 00             	adc    $0x0,%edx
43cfae:	2b c2                	sub    %edx,%eax
43cfb0:	89 45 f4             	mov    %eax,-0xc(%ebp)
43cfb3:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
43cfb7:	74 75                	je     0x43d02e
43cfb9:	0f b6 05 34 d2 43 00 	movzbl 0x43d234,%eax
43cfc0:	22 46 61             	and    0x61(%esi),%al
43cfc3:	0f b6 15 38 d2 43 00 	movzbl 0x43d238,%edx
43cfca:	3a d0                	cmp    %al,%dl
43cfcc:	74 25                	je     0x43cff3
43cfce:	8b 86 75 01 00 00    	mov    0x175(%esi),%eax
43cfd4:	50                   	push   %eax
43cfd5:	8b 03                	mov    (%ebx),%eax
43cfd7:	50                   	push   %eax
43cfd8:	8b 86 6d 01 00 00    	mov    0x16d(%esi),%eax
43cfde:	50                   	push   %eax
43cfdf:	e8 8c 9a fc ff       	call   0x406a70
43cfe4:	8b 55 f0             	mov    -0x10(%ebp),%edx
43cfe7:	d1 fa                	sar    $1,%edx
43cfe9:	79 03                	jns    0x43cfee
43cfeb:	83 d2 00             	adc    $0x0,%edx
43cfee:	2b c2                	sub    %edx,%eax
43cff0:	89 45 f8             	mov    %eax,-0x8(%ebp)
43cff3:	0f b6 05 3c d2 43 00 	movzbl 0x43d23c,%eax
43cffa:	22 46 61             	and    0x61(%esi),%al
43cffd:	0f b6 15 38 d2 43 00 	movzbl 0x43d238,%edx
43d004:	3a d0                	cmp    %al,%dl
43d006:	74 26                	je     0x43d02e
43d008:	8b 86 79 01 00 00    	mov    0x179(%esi),%eax
43d00e:	50                   	push   %eax
43d00f:	8b 43 04             	mov    0x4(%ebx),%eax
43d012:	50                   	push   %eax
43d013:	8b 86 71 01 00 00    	mov    0x171(%esi),%eax
43d019:	50                   	push   %eax
43d01a:	e8 51 9a fc ff       	call   0x406a70
43d01f:	8b 55 ec             	mov    -0x14(%ebp),%edx
43d022:	d1 fa                	sar    $1,%edx
43d024:	79 03                	jns    0x43d029
43d026:	83 d2 00             	adc    $0x0,%edx
43d029:	2b c2                	sub    %edx,%eax
43d02b:	89 45 f4             	mov    %eax,-0xc(%ebp)
43d02e:	8b 45 f0             	mov    -0x10(%ebp),%eax
43d031:	50                   	push   %eax
43d032:	8b 45 ec             	mov    -0x14(%ebp),%eax
43d035:	50                   	push   %eax
43d036:	6a 01                	push   $0x1
43d038:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43d03b:	8b 55 f8             	mov    -0x8(%ebp),%edx
43d03e:	8b 46 78             	mov    0x78(%esi),%eax
43d041:	e8 8a a0 00 00       	call   0x4470d0
43d046:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
43d04a:	0f 84 d8 01 00 00    	je     0x43d228
43d050:	8b 47 08             	mov    0x8(%edi),%eax
43d053:	2b 07                	sub    (%edi),%eax
43d055:	89 45 f0             	mov    %eax,-0x10(%ebp)
43d058:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
43d05c:	7c 0e                	jl     0x43d06c
43d05e:	0f b6 45 14          	movzbl 0x14(%ebp),%eax
43d062:	04 fd                	add    $0xfd,%al
43d064:	2c 02                	sub    $0x2,%al
43d066:	72 04                	jb     0x43d06c
43d068:	2c 01                	sub    $0x1,%al
43d06a:	75 10                	jne    0x43d07c
43d06c:	ba 02 00 00 00       	mov    $0x2,%edx
43d071:	8b 46 78             	mov    0x78(%esi),%eax
43d074:	8b 08                	mov    (%eax),%ecx
43d076:	ff 51 10             	call   *0x10(%ecx)
43d079:	89 45 f0             	mov    %eax,-0x10(%ebp)
43d07c:	8b 47 0c             	mov    0xc(%edi),%eax
43d07f:	2b 47 04             	sub    0x4(%edi),%eax