40cbc6:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40cbca:	48                   	dec    %eax
40cbcb:	50                   	push   %eax
40cbcc:	e8 11 cd 00 00       	call   0x4198e2
40cbd1:	8b 4d 08             	mov    0x8(%ebp),%ecx
40cbd4:	83 c4 0c             	add    $0xc,%esp
40cbd7:	89 01                	mov    %eax,(%ecx)
40cbd9:	8b 46 0c             	mov    0xc(%esi),%eax
40cbdc:	83 38 22             	cmpl   $0x22,(%eax)
40cbdf:	74 0f                	je     0x40cbf0
40cbe1:	8b 45 fc             	mov    -0x4(%ebp),%eax
40cbe4:	3b 46 10             	cmp    0x10(%esi),%eax
40cbe7:	72 07                	jb     0x40cbf0
40cbe9:	89 46 10             	mov    %eax,0x10(%esi)
40cbec:	b0 01                	mov    $0x1,%al
40cbee:	eb 02                	jmp    0x40cbf2
40cbf0:	32 c0                	xor    %al,%al
40cbf2:	83 3f 00             	cmpl   $0x0,(%edi)
40cbf5:	75 06                	jne    0x40cbfd
40cbf7:	85 db                	test   %ebx,%ebx
40cbf9:	74 02                	je     0x40cbfd
40cbfb:	89 1f                	mov    %ebx,(%edi)
40cbfd:	5f                   	pop    %edi
40cbfe:	5e                   	pop    %esi
40cbff:	5b                   	pop    %ebx
40cc00:	8b e5                	mov    %ebp,%esp
40cc02:	5d                   	pop    %ebp
40cc03:	c2 04 00             	ret    $0x4
40cc06:	8b ff                	mov    %edi,%edi
40cc08:	55                   	push   %ebp
40cc09:	8b ec                	mov    %esp,%ebp
40cc0b:	51                   	push   %ecx
40cc0c:	53                   	push   %ebx
40cc0d:	56                   	push   %esi
40cc0e:	8b f1                	mov    %ecx,%esi
40cc10:	8d 4d fc             	lea    -0x4(%ebp),%ecx
40cc13:	57                   	push   %edi
40cc14:	6a 0a                	push   $0xa
40cc16:	51                   	push   %ecx
40cc17:	8b 7e 0c             	mov    0xc(%esi),%edi
40cc1a:	8b 1f                	mov    (%edi),%ebx
40cc1c:	83 27 00             	andl   $0x0,(%edi)
40cc1f:	8b 46 10             	mov    0x10(%esi),%eax
40cc22:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40cc26:	83 e8 02             	sub    $0x2,%eax
40cc29:	50                   	push   %eax
40cc2a:	e8 0b cd 00 00       	call   0x41993a
40cc2f:	8b 4d 08             	mov    0x8(%ebp),%ecx
40cc32:	83 c4 0c             	add    $0xc,%esp
40cc35:	89 01                	mov    %eax,(%ecx)
40cc37:	8b 46 0c             	mov    0xc(%esi),%eax
40cc3a:	83 38 22             	cmpl   $0x22,(%eax)
40cc3d:	74 0f                	je     0x40cc4e
40cc3f:	8b 45 fc             	mov    -0x4(%ebp),%eax
40cc42:	3b 46 10             	cmp    0x10(%esi),%eax
40cc45:	72 07                	jb     0x40cc4e
40cc47:	89 46 10             	mov    %eax,0x10(%esi)
40cc4a:	b0 01                	mov    $0x1,%al
40cc4c:	eb 02                	jmp    0x40cc50
40cc4e:	32 c0                	xor    %al,%al
40cc50:	83 3f 00             	cmpl   $0x0,(%edi)
40cc53:	75 06                	jne    0x40cc5b
40cc55:	85 db                	test   %ebx,%ebx
40cc57:	74 02                	je     0x40cc5b
40cc59:	89 1f                	mov    %ebx,(%edi)
40cc5b:	5f                   	pop    %edi
40cc5c:	5e                   	pop    %esi
40cc5d:	5b                   	pop    %ebx
40cc5e:	8b e5                	mov    %ebp,%esp
40cc60:	5d                   	pop    %ebp
40cc61:	c2 04 00             	ret    $0x4
40cc64:	8b ff                	mov    %edi,%edi
40cc66:	56                   	push   %esi
40cc67:	8b f1                	mov    %ecx,%esi
40cc69:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
40cc6f:	e8 6d 20 00 00       	call   0x40ece1
40cc74:	84 c0                	test   %al,%al
40cc76:	75 05                	jne    0x40cc7d
40cc78:	83 c8 ff             	or     $0xffffffff,%eax
40cc7b:	5e                   	pop    %esi
40cc7c:	c3                   	ret
40cc7d:	53                   	push   %ebx
40cc7e:	33 db                	xor    %ebx,%ebx
40cc80:	39 5e 10             	cmp    %ebx,0x10(%esi)
40cc83:	0f 85 bb 00 00 00    	jne    0x40cd44
40cc89:	e8 dd 7d 00 00       	call   0x414a6b
40cc8e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40cc94:	e8 49 f0 ff ff       	call   0x40bce2
40cc99:	83 c8 ff             	or     $0xffffffff,%eax
40cc9c:	e9 b9 00 00 00       	jmp    0x40cd5a
40cca1:	89 5e 38             	mov    %ebx,0x38(%esi)
40cca4:	89 5e 1c             	mov    %ebx,0x1c(%esi)
40cca7:	e9 85 00 00 00       	jmp    0x40cd31
40ccac:	ff 46 10             	incl   0x10(%esi)
40ccaf:	39 5e 18             	cmp    %ebx,0x18(%esi)
40ccb2:	0f 8c 8c 00 00 00    	jl     0x40cd44
40ccb8:	ff 76 1c             	push   0x1c(%esi)
40ccbb:	0f b6 46 31          	movzbl 0x31(%esi),%eax
40ccbf:	8b ce                	mov    %esi,%ecx
40ccc1:	50                   	push   %eax
40ccc2:	e8 93 fd ff ff       	call   0x40ca5a
40ccc7:	89 46 1c             	mov    %eax,0x1c(%esi)
40ccca:	83 f8 08             	cmp    $0x8,%eax
40cccd:	74 ba                	je     0x40cc89
40cccf:	83 f8 07             	cmp    $0x7,%eax
40ccd2:	77 c5                	ja     0x40cc99
40ccd4:	ff 24 85 60 cd 40 00 	jmp    *0x40cd60(,%eax,4)
40ccdb:	8b ce                	mov    %esi,%ecx
40ccdd:	e8 91 03 00 00       	call   0x40d073
40cce2:	eb 45                	jmp    0x40cd29
40cce4:	83 4e 28 ff          	orl    $0xffffffff,0x28(%esi)
40cce8:	89 5e 24             	mov    %ebx,0x24(%esi)
40cceb:	88 5e 30             	mov    %bl,0x30(%esi)
40ccee:	89 5e 20             	mov    %ebx,0x20(%esi)
40ccf1:	89 5e 2c             	mov    %ebx,0x2c(%esi)
40ccf4:	88 5e 3c             	mov    %bl,0x3c(%esi)
40ccf7:	eb 38                	jmp    0x40cd31
40ccf9:	8b ce                	mov    %esi,%ecx
40ccfb:	e8 bc 02 00 00       	call   0x40cfbc
40cd00:	eb 27                	jmp    0x40cd29
40cd02:	8b ce                	mov    %esi,%ecx
40cd04:	e8 7a 10 00 00       	call   0x40dd83
40cd09:	eb 1e                	jmp    0x40cd29
40cd0b:	89 5e 28             	mov    %ebx,0x28(%esi)
40cd0e:	eb 21                	jmp    0x40cd31
40cd10:	8b ce                	mov    %esi,%ecx
40cd12:	e8 ea 04 00 00       	call   0x40d201
40cd17:	eb 10                	jmp    0x40cd29
40cd19:	8b ce                	mov    %esi,%ecx
40cd1b:	e8 5a 05 00 00       	call   0x40d27a
40cd20:	eb 07                	jmp    0x40cd29
40cd22:	8b ce                	mov    %esi,%ecx
40cd24:	e8 9f 09 00 00       	call   0x40d6c8
40cd29:	84 c0                	test   %al,%al
40cd2b:	0f 84 68 ff ff ff    	je     0x40cc99
40cd31:	8b 46 10             	mov    0x10(%esi),%eax
40cd34:	8a 00                	mov    (%eax),%al
40cd36:	88 46 31             	mov    %al,0x31(%esi)
40cd39:	84 c0                	test   %al,%al
40cd3b:	0f 85 6b ff ff ff    	jne    0x40ccac
40cd41:	ff 46 10             	incl   0x10(%esi)
40cd44:	ff 86 50 04 00 00    	incl   0x450(%esi)
40cd4a:	83 be 50 04 00 00 02 	cmpl   $0x2,0x450(%esi)
40cd51:	0f 85 4a ff ff ff    	jne    0x40cca1
40cd57:	8b 46 18             	mov    0x18(%esi),%eax
40cd5a:	5b                   	pop    %ebx
40cd5b:	5e                   	pop    %esi
40cd5c:	c3                   	ret
40cd5d:	8d 49 00             	lea    0x0(%ecx),%ecx
40cd60:	db cc                	fcmovne %st(4),%st
40cd62:	40                   	inc    %eax
40cd63:	00 e4                	add    %ah,%ah
40cd65:	cc                   	int3
40cd66:	40                   	inc    %eax
40cd67:	00 f9                	add    %bh,%cl
40cd69:	cc                   	int3
40cd6a:	40                   	inc    %eax
40cd6b:	00 02                	add    %al,(%edx)
40cd6d:	cd 40                	int    $0x40
40cd6f:	00 0b                	add    %cl,(%ebx)
40cd71:	cd 40                	int    $0x40
40cd73:	00 10                	add    %dl,(%eax)
40cd75:	cd 40                	int    $0x40
40cd77:	00 19                	add    %bl,(%ecx)
40cd79:	cd 40                	int    $0x40
40cd7b:	00 22                	add    %ah,(%edx)
40cd7d:	cd 40                	int    $0x40
40cd7f:	00 8b ff 56 8b f1    	add    %cl,-0xe74a901(%ebx)
40cd85:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
40cd8b:	e8 8d 1f 00 00       	call   0x40ed1d
40cd90:	84 c0                	test   %al,%al
40cd92:	75 05                	jne    0x40cd99
40cd94:	83 c8 ff             	or     $0xffffffff,%eax
40cd97:	5e                   	pop    %esi
40cd98:	c3                   	ret
40cd99:	53                   	push   %ebx
40cd9a:	33 db                	xor    %ebx,%ebx
40cd9c:	39 5e 10             	cmp    %ebx,0x10(%esi)
40cd9f:	0f 85 bb 00 00 00    	jne    0x40ce60
40cda5:	e8 c1 7c 00 00       	call   0x414a6b
40cdaa:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40cdb0:	e8 2d ef ff ff       	call   0x40bce2
40cdb5:	83 c8 ff             	or     $0xffffffff,%eax
40cdb8:	e9 b9 00 00 00       	jmp    0x40ce76
40cdbd:	89 5e 38             	mov    %ebx,0x38(%esi)
40cdc0:	89 5e 1c             	mov    %ebx,0x1c(%esi)
40cdc3:	e9 85 00 00 00       	jmp    0x40ce4d
40cdc8:	ff 46 10             	incl   0x10(%esi)
40cdcb:	39 5e 18             	cmp    %ebx,0x18(%esi)
40cdce:	0f 8c 8c 00 00 00    	jl     0x40ce60
40cdd4:	ff 76 1c             	push   0x1c(%esi)
40cdd7:	0f b6 46 31          	movzbl 0x31(%esi),%eax
40cddb:	8b ce                	mov    %esi,%ecx
40cddd:	50                   	push   %eax
40cdde:	e8 a9 fc ff ff       	call   0x40ca8c
40cde3:	89 46 1c             	mov    %eax,0x1c(%esi)
40cde6:	83 f8 08             	cmp    $0x8,%eax
40cde9:	74 ba                	je     0x40cda5
40cdeb:	83 f8 07             	cmp    $0x7,%eax
40cdee:	77 c5                	ja     0x40cdb5
40cdf0:	ff 24 85 7c ce 40 00 	jmp    *0x40ce7c(,%eax,4)
40cdf7:	8b ce                	mov    %esi,%ecx
40cdf9:	e8 94 02 00 00       	call   0x40d092
40cdfe:	eb 45                	jmp    0x40ce45
40ce00:	83 4e 28 ff          	orl    $0xffffffff,0x28(%esi)
40ce04:	89 5e 24             	mov    %ebx,0x24(%esi)
40ce07:	88 5e 30             	mov    %bl,0x30(%esi)
40ce0a:	89 5e 20             	mov    %ebx,0x20(%esi)
40ce0d:	89 5e 2c             	mov    %ebx,0x2c(%esi)
40ce10:	88 5e 3c             	mov    %bl,0x3c(%esi)
40ce13:	eb 38                	jmp    0x40ce4d
40ce15:	8b ce                	mov    %esi,%ecx
40ce17:	e8 dd 01 00 00       	call   0x40cff9
40ce1c:	eb 27                	jmp    0x40ce45
40ce1e:	8b ce                	mov    %esi,%ecx
40ce20:	e8 89 0f 00 00       	call   0x40ddae
40ce25:	eb 1e                	jmp    0x40ce45
40ce27:	89 5e 28             	mov    %ebx,0x28(%esi)
40ce2a:	eb 21                	jmp    0x40ce4d
40ce2c:	8b ce                	mov    %esi,%ecx
40ce2e:	e8 f6 03 00 00       	call   0x40d229
40ce33:	eb 10                	jmp    0x40ce45
40ce35:	8b ce                	mov    %esi,%ecx
40ce37:	e8 a7 05 00 00       	call   0x40d3e3
40ce3c:	eb 07                	jmp    0x40ce45
40ce3e:	8b ce                	mov    %esi,%ecx
40ce40:	e8 b2 0a 00 00       	call   0x40d8f7
40ce45:	84 c0                	test   %al,%al
40ce47:	0f 84 68 ff ff ff    	je     0x40cdb5
40ce4d:	8b 46 10             	mov    0x10(%esi),%eax
40ce50:	8a 00                	mov    (%eax),%al
40ce52:	88 46 31             	mov    %al,0x31(%esi)
40ce55:	84 c0                	test   %al,%al
40ce57:	0f 85 6b ff ff ff    	jne    0x40cdc8
40ce5d:	ff 46 10             	incl   0x10(%esi)
40ce60:	ff 86 50 04 00 00    	incl   0x450(%esi)
40ce66:	83 be 50 04 00 00 02 	cmpl   $0x2,0x450(%esi)
40ce6d:	0f 85 4a ff ff ff    	jne    0x40cdbd
40ce73:	8b 46 18             	mov    0x18(%esi),%eax
40ce76:	5b                   	pop    %ebx
40ce77:	5e                   	pop    %esi
40ce78:	c3                   	ret
40ce79:	8d 49 00             	lea    0x0(%ecx),%ecx
40ce7c:	f7 cd 40 00 00 ce    	test   $0xce000040,%ebp
40ce82:	40                   	inc    %eax
40ce83:	00 15 ce 40 00 1e    	add    %dl,0x1e0040ce
40ce89:	ce                   	into
40ce8a:	40                   	inc    %eax
40ce8b:	00 27                	add    %ah,(%edi)
40ce8d:	ce                   	into
40ce8e:	40                   	inc    %eax
40ce8f:	00 2c ce             	add    %ch,(%esi,%ecx,8)
40ce92:	40                   	inc    %eax
40ce93:	00 35 ce 40 00 3e    	add    %dh,0x3e0040ce
40ce99:	ce                   	into
40ce9a:	40                   	inc    %eax
40ce9b:	00 8b ff 56 8b f1    	add    %cl,-0xe74a901(%ebx)
40cea1:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
40cea7:	e8 56 1e 00 00       	call   0x40ed02
40ceac:	84 c0                	test   %al,%al
40ceae:	75 05                	jne    0x40ceb5
40ceb0:	83 c8 ff             	or     $0xffffffff,%eax
40ceb3:	5e                   	pop    %esi
40ceb4:	c3                   	ret
40ceb5:	53                   	push   %ebx
40ceb6:	33 db                	xor    %ebx,%ebx
40ceb8:	39 5e 10             	cmp    %ebx,0x10(%esi)
40cebb:	0f 85 c0 00 00 00    	jne    0x40cf81
40cec1:	e8 a5 7b 00 00       	call   0x414a6b
40cec6:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
40cecc:	e8 11 ee ff ff       	call   0x40bce2
40ced1:	83 c8 ff             	or     $0xffffffff,%eax
40ced4:	e9 be 00 00 00       	jmp    0x40cf97
40ced9:	89 5e 38             	mov    %ebx,0x38(%esi)
40cedc:	89 5e 1c             	mov    %ebx,0x1c(%esi)
40cedf:	e9 86 00 00 00       	jmp    0x40cf6a
40cee4:	83 46 10 02          	addl   $0x2,0x10(%esi)
40cee8:	39 5e 18             	cmp    %ebx,0x18(%esi)
40ceeb:	0f 8c 90 00 00 00    	jl     0x40cf81
40cef1:	ff 76 1c             	push   0x1c(%esi)
40cef4:	0f b7 46 32          	movzwl 0x32(%esi),%eax
40cef8:	8b ce                	mov    %esi,%ecx
40cefa:	50                   	push   %eax
40cefb:	e8 be fb ff ff       	call   0x40cabe
40cf00:	89 46 1c             	mov    %eax,0x1c(%esi)
40cf03:	83 f8 08             	cmp    $0x8,%eax
40cf06:	74 b9                	je     0x40cec1
40cf08:	83 f8 07             	cmp    $0x7,%eax
40cf0b:	77 c4                	ja     0x40ced1
40cf0d:	ff 24 85 9c cf 40 00 	jmp    *0x40cf9c(,%eax,4)
40cf14:	8b ce                	mov    %esi,%ecx
40cf16:	e8 96 01 00 00       	call   0x40d0b1
40cf1b:	eb 45                	jmp    0x40cf62
40cf1d:	83 4e 28 ff          	orl    $0xffffffff,0x28(%esi)
40cf21:	89 5e 24             	mov    %ebx,0x24(%esi)
40cf24:	88 5e 30             	mov    %bl,0x30(%esi)
40cf27:	89 5e 20             	mov    %ebx,0x20(%esi)
40cf2a:	89 5e 2c             	mov    %ebx,0x2c(%esi)
40cf2d:	88 5e 3c             	mov    %bl,0x3c(%esi)
40cf30:	eb 38                	jmp    0x40cf6a
40cf32:	8b ce                	mov    %esi,%ecx
40cf34:	e8 fd 00 00 00       	call   0x40d036
40cf39:	eb 27                	jmp    0x40cf62
40cf3b:	8b ce                	mov    %esi,%ecx
40cf3d:	e8 97 0e 00 00       	call   0x40ddd9
40cf42:	eb 1e                	jmp    0x40cf62
40cf44:	89 5e 28             	mov    %ebx,0x28(%esi)
40cf47:	eb 21                	jmp    0x40cf6a
40cf49:	8b ce                	mov    %esi,%ecx
40cf4b:	e8 01 03 00 00       	call   0x40d251
40cf50:	eb 10                	jmp    0x40cf62
40cf52:	8b ce                	mov    %esi,%ecx
40cf54:	e8 f3 05 00 00       	call   0x40d54c
40cf59:	eb 07                	jmp    0x40cf62
40cf5b:	8b ce                	mov    %esi,%ecx
40cf5d:	e8 c4 0b 00 00       	call   0x40db26
40cf62:	84 c0                	test   %al,%al
40cf64:	0f 84 67 ff ff ff    	je     0x40ced1
40cf6a:	8b 46 10             	mov    0x10(%esi),%eax
40cf6d:	0f b7 00             	movzwl (%eax),%eax
40cf70:	66 89 46 32          	mov    %ax,0x32(%esi)
40cf74:	66 85 c0             	test   %ax,%ax
40cf77:	0f 85 67 ff ff ff    	jne    0x40cee4
40cf7d:	83 46 10 02          	addl   $0x2,0x10(%esi)
40cf81:	ff 86 50 04 00 00    	incl   0x450(%esi)
40cf87:	83 be 50 04 00 00 02 	cmpl   $0x2,0x450(%esi)
40cf8e:	0f 85 45 ff ff ff    	jne    0x40ced9
40cf94:	8b 46 18             	mov    0x18(%esi),%eax
40cf97:	5b                   	pop    %ebx
40cf98:	5e                   	pop    %esi
40cf99:	c3                   	ret
40cf9a:	8b ff                	mov    %edi,%edi
40cf9c:	14 cf                	adc    $0xcf,%al
40cf9e:	40                   	inc    %eax
40cf9f:	00 1d cf 40 00 32    	add    %bl,0x320040cf
40cfa5:	cf                   	iret
40cfa6:	40                   	inc    %eax
40cfa7:	00 3b                	add    %bh,(%ebx)
40cfa9:	cf                   	iret
40cfaa:	40                   	inc    %eax
40cfab:	00 44 cf 40          	add    %al,0x40(%edi,%ecx,8)
40cfaf:	00 49 cf             	add    %cl,-0x31(%ecx)
40cfb2:	40                   	inc    %eax
40cfb3:	00 52 cf             	add    %dl,-0x31(%edx)
40cfb6:	40                   	inc    %eax
40cfb7:	00 5b cf             	add    %bl,-0x31(%ebx)
40cfba:	40                   	inc    %eax
40cfbb:	00 0f                	add    %cl,(%edi)
40cfbd:	be 41 31 83 e8       	mov    $0xe8833141,%esi
40cfc2:	20 74 2d 83          	and    %dh,-0x7d(%ebp,%ebp,1)