40aac8:	8d 41 01             	lea    0x1(%ecx),%eax
40aacb:	be 13 00 00 00       	mov    $0x13,%esi
40aad0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40aad3:	89 01                	mov    %eax,(%ecx)
40aad5:	e9 91 f6 ff ff       	jmp    0x40a16b
40aada:	84 c9                	test   %cl,%cl
40aadc:	74 1a                	je     0x40aaf8
40aade:	8b 72 04             	mov    0x4(%edx),%esi
40aae1:	52                   	push   %edx
40aae2:	e8 85 65 01 00       	call   0x42106c
40aae7:	8b d6                	mov    %esi,%edx
40aae9:	83 c4 04             	add    $0x4,%esp
40aaec:	8b 74 24 10          	mov    0x10(%esp),%esi
40aaf0:	89 54 24 1c          	mov    %edx,0x1c(%esp)
40aaf4:	89 54 24 54          	mov    %edx,0x54(%esp)
40aaf8:	80 7c 24 58 00       	cmpb   $0x0,0x58(%esp)
40aafd:	0f 84 b8 60 03 00    	je     0x440bbb
40ab03:	c6 44 24 59 01       	movb   $0x1,0x59(%esp)
40ab08:	ff 4c 24 50          	decl   0x50(%esp)
40ab0c:	e9 c2 f9 ff ff       	jmp    0x40a4d3
40ab11:	8d 41 01             	lea    0x1(%ecx),%eax
40ab14:	be 01 00 00 00       	mov    $0x1,%esi
40ab19:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40ab1c:	89 01                	mov    %eax,(%ecx)
40ab1e:	e9 48 f6 ff ff       	jmp    0x40a16b
40ab23:	83 7c 24 24 00       	cmpl   $0x0,0x24(%esp)
40ab28:	c7 44 24 10 16 00 00 	movl   $0x16,0x10(%esp)
40ab2f:	00
40ab30:	0f 84 4b 08 00 00    	je     0x40b381
40ab36:	80 7c 24 2d 00       	cmpb   $0x0,0x2d(%esp)
40ab3b:	0f 85 c7 08 00 00    	jne    0x40b408
40ab41:	6a 18                	push   $0x18
40ab43:	e8 ae 64 01 00       	call   0x420ff6
40ab48:	8b f0                	mov    %eax,%esi
40ab4a:	83 c4 04             	add    $0x4,%esp
40ab4d:	85 f6                	test   %esi,%esi
40ab4f:	0f 84 56 0b 00 00    	je     0x40b6ab
40ab55:	68 88 74 4c 00       	push   $0x4c7488
40ab5a:	8b ce                	mov    %esi,%ecx
40ab5c:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
40ab63:	e8 58 ef ff ff       	call   0x409ac0
40ab68:	8b 44 24 08          	mov    0x8(%esp),%eax
40ab6c:	89 46 10             	mov    %eax,0x10(%esi)
40ab6f:	8b c6                	mov    %esi,%eax
40ab71:	89 44 24 08          	mov    %eax,0x8(%esp)
40ab75:	89 44 24 28          	mov    %eax,0x28(%esp)
40ab79:	8b 45 08             	mov    0x8(%ebp),%eax
40ab7c:	8b 75 0c             	mov    0xc(%ebp),%esi
40ab7f:	ff 44 24 24          	incl   0x24(%esp)
40ab83:	8b 50 04             	mov    0x4(%eax),%edx
40ab86:	8b 0e                	mov    (%esi),%ecx
40ab88:	8b 44 8a 04          	mov    0x4(%edx,%ecx,4),%eax
40ab8c:	66 83 78 08 47       	cmpw   $0x47,0x8(%eax)
40ab91:	0f 85 6e 54 03 00    	jne    0x440005
40ab97:	83 7c 24 24 01       	cmpl   $0x1,0x24(%esp)
40ab9c:	0f 84 f0 07 00 00    	je     0x40b392
40aba2:	80 7c 24 2d 00       	cmpb   $0x0,0x2d(%esp)
40aba7:	8b 44 24 08          	mov    0x8(%esp),%eax
40abab:	0f 85 01 0b 00 00    	jne    0x40b6b2
40abb1:	89 44 24 18          	mov    %eax,0x18(%esp)
40abb5:	c7 44 24 64 84 fb 48 	movl   $0x48fb84,0x64(%esp)
40abbc:	00
40abbd:	c7 44 24 68 00 00 00 	movl   $0x0,0x68(%esp)
40abc4:	00
40abc5:	c7 44 24 6c 00 00 00 	movl   $0x0,0x6c(%esp)
40abcc:	00
40abcd:	c7 44 24 70 00 00 00 	movl   $0x0,0x70(%esp)
40abd4:	00
40abd5:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
40abd8:	8b 30                	mov    (%eax),%esi
40abda:	0f bf 40 0a          	movswl 0xa(%eax),%eax
40abde:	89 44 24 3c          	mov    %eax,0x3c(%esp)
40abe2:	a1 64 74 4c 00       	mov    0x4c7464,%eax
40abe7:	89 74 24 30          	mov    %esi,0x30(%esp)
40abeb:	a8 01                	test   $0x1,%al
40abed:	0f 84 2e 54 03 00    	je     0x440021
40abf3:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
40abf7:	3b 35 68 74 4c 00    	cmp    0x4c7468,%esi
40abfd:	0f 84 5c 54 03 00    	je     0x44005f
40ac03:	81 c1 70 04 00 00    	add    $0x470,%ecx
40ac09:	56                   	push   %esi
40ac0a:	e8 81 e4 00 00       	call   0x419090
40ac0f:	8b 55 08             	mov    0x8(%ebp),%edx
40ac12:	8a 40 20             	mov    0x20(%eax),%al
40ac15:	88 44 24 17          	mov    %al,0x17(%esp)
40ac19:	8b 45 0c             	mov    0xc(%ebp),%eax
40ac1c:	ff 00                	incl   (%eax)
40ac1e:	8b 08                	mov    (%eax),%ecx
40ac20:	8b 42 04             	mov    0x4(%edx),%eax
40ac23:	8b 04 88             	mov    (%eax,%ecx,4),%eax
40ac26:	66 83 78 08 47       	cmpw   $0x47,0x8(%eax)
40ac2b:	0f 85 d8 0a 00 00    	jne    0x40b709
40ac31:	8b 52 04             	mov    0x4(%edx),%edx
40ac34:	8d 41 01             	lea    0x1(%ecx),%eax
40ac37:	89 44 24 40          	mov    %eax,0x40(%esp)
40ac3b:	33 f6                	xor    %esi,%esi
40ac3d:	89 44 24 74          	mov    %eax,0x74(%esp)
40ac41:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40ac44:	89 01                	mov    %eax,(%ecx)
40ac46:	8b c8                	mov    %eax,%ecx
40ac48:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
40ac4b:	0f bf 40 08          	movswl 0x8(%eax),%eax
40ac4f:	83 e8 47             	sub    $0x47,%eax
40ac52:	0f 84 b1 04 00 00    	je     0x40b109
40ac58:	48                   	dec    %eax
40ac59:	74 0e                	je     0x40ac69
40ac5b:	83 e8 37             	sub    $0x37,%eax
40ac5e:	0f 84 03 60 03 00    	je     0x440c67
40ac64:	8d 41 01             	lea    0x1(%ecx),%eax
40ac67:	eb d8                	jmp    0x40ac41
40ac69:	85 f6                	test   %esi,%esi
40ac6b:	0f 85 8f 04 00 00    	jne    0x40b100
40ac71:	8b 55 0c             	mov    0xc(%ebp),%edx
40ac74:	89 74 24 34          	mov    %esi,0x34(%esp)
40ac78:	8b 0a                	mov    (%edx),%ecx
40ac7a:	89 4c 24 4c          	mov    %ecx,0x4c(%esp)
40ac7e:	8d 41 01             	lea    0x1(%ecx),%eax
40ac81:	89 02                	mov    %eax,(%edx)
40ac83:	39 4c 24 40          	cmp    %ecx,0x40(%esp)
40ac87:	0f 83 02 01 00 00    	jae    0x40ad8f
40ac8d:	8d 49 00             	lea    0x0(%ecx),%ecx
40ac90:	8b 44 24 70          	mov    0x70(%esp),%eax
40ac94:	c7 84 24 80 00 00 00 	movl   $0x0,0x80(%esp)
40ac9b:	00 00 00 00
40ac9f:	c7 84 24 88 00 00 00 	movl   $0x0,0x88(%esp)
40aca6:	00 00 00 00
40acaa:	c7 84 24 8c 00 00 00 	movl   $0x1,0x8c(%esp)
40acb1:	01 00 00 00
40acb5:	39 44 24 6c          	cmp    %eax,0x6c(%esp)
40acb9:	75 3b                	jne    0x40acf6
40acbb:	03 c0                	add    %eax,%eax
40acbd:	83 f8 08             	cmp    $0x8,%eax
40acc0:	73 05                	jae    0x40acc7
40acc2:	b8 08 00 00 00       	mov    $0x8,%eax
40acc7:	33 c9                	xor    %ecx,%ecx
40acc9:	89 44 24 70          	mov    %eax,0x70(%esp)
40accd:	ba 04 00 00 00       	mov    $0x4,%edx
40acd2:	f7 e2                	mul    %edx
40acd4:	0f 90 c1             	seto   %cl
40acd7:	f7 d9                	neg    %ecx
40acd9:	0b c8                	or     %eax,%ecx
40acdb:	51                   	push   %ecx
40acdc:	e8 15 63 01 00       	call   0x420ff6
40ace1:	8b f0                	mov    %eax,%esi
40ace3:	83 c4 04             	add    $0x4,%esp
40ace6:	8b 44 24 68          	mov    0x68(%esp),%eax
40acea:	85 c0                	test   %eax,%eax
40acec:	0f 85 94 53 03 00    	jne    0x440086
40acf2:	89 74 24 68          	mov    %esi,0x68(%esp)
40acf6:	6a 10                	push   $0x10
40acf8:	e8 f9 62 01 00       	call   0x420ff6
40acfd:	8b f0                	mov    %eax,%esi
40acff:	83 c4 04             	add    $0x4,%esp
40ad02:	85 f6                	test   %esi,%esi
40ad04:	0f 84 b0 09 00 00    	je     0x40b6ba
40ad0a:	8d 84 24 80 00 00 00 	lea    0x80(%esp),%eax
40ad11:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
40ad18:	50                   	push   %eax
40ad19:	8b ce                	mov    %esi,%ecx
40ad1b:	e8 a0 ed ff ff       	call   0x409ac0
40ad20:	8b 4c 24 6c          	mov    0x6c(%esp),%ecx
40ad24:	8b 44 24 68          	mov    0x68(%esp),%eax
40ad28:	89 34 88             	mov    %esi,(%eax,%ecx,4)
40ad2b:	8b 4c 24 6c          	mov    0x6c(%esp),%ecx
40ad2f:	8b 74 24 4c          	mov    0x4c(%esp),%esi
40ad33:	41                   	inc    %ecx
40ad34:	80 7c 24 17 00       	cmpb   $0x0,0x17(%esp)
40ad39:	8b 44 24 68          	mov    0x68(%esp),%eax
40ad3d:	89 4c 24 6c          	mov    %ecx,0x6c(%esp)
40ad41:	56                   	push   %esi
40ad42:	0f 85 1c 09 00 00    	jne    0x40b664
40ad48:	ff 74 88 fc          	push   -0x4(%eax,%ecx,4)
40ad4c:	8b 4c 24 14          	mov    0x14(%esp),%ecx
40ad50:	8d 44 24 7c          	lea    0x7c(%esp),%eax
40ad54:	50                   	push   %eax
40ad55:	ff 75 08             	push   0x8(%ebp)
40ad58:	e8 a3 f2 ff ff       	call   0x40a000
40ad5d:	85 c0                	test   %eax,%eax
40ad5f:	0f 88 2f 5f 03 00    	js     0x440c94
40ad65:	ff 44 24 34          	incl   0x34(%esp)
40ad69:	8b 4c 24 74          	mov    0x74(%esp),%ecx
40ad6d:	3b ce                	cmp    %esi,%ecx
40ad6f:	0f 85 ce 05 00 00    	jne    0x40b343
40ad75:	c7 84 24 8c 00 00 00 	movl   $0x1,0x8c(%esp)
40ad7c:	01 00 00 00
40ad80:	c7 84 24 80 00 00 00 	movl   $0x0,0x80(%esp)
40ad87:	00 00 00 00
40ad8b:	8b 74 24 34          	mov    0x34(%esp),%esi
40ad8f:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
40ad93:	ff 74 24 30          	push   0x30(%esp)
40ad97:	8d 89 70 04 00 00    	lea    0x470(%ecx),%ecx
40ad9d:	e8 ee e2 00 00       	call   0x419090
40ada2:	3b 70 18             	cmp    0x18(%eax),%esi
40ada5:	0f 8c 53 09 00 00    	jl     0x40b6fe
40adab:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
40adaf:	ff 74 24 30          	push   0x30(%esp)
40adb3:	8d 89 70 04 00 00    	lea    0x470(%ecx),%ecx
40adb9:	e8 d2 e2 00 00       	call   0x419090
40adbe:	3b 70 1c             	cmp    0x1c(%eax),%esi
40adc1:	0f 8f 37 09 00 00    	jg     0x40b6fe
40adc7:	8b 74 24 18          	mov    0x18(%esp),%esi
40adcb:	8b 4e 08             	mov    0x8(%esi),%ecx
40adce:	85 c9                	test   %ecx,%ecx
40add0:	0f 85 db 52 03 00    	jne    0x4400b1
40add6:	8b 46 0c             	mov    0xc(%esi),%eax
40add9:	83 f8 05             	cmp    $0x5,%eax
40addc:	0f 8d e1 52 03 00    	jge    0x4400c3
40ade2:	8b 54 24 0c          	mov    0xc(%esp),%edx
40ade6:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
40aded:	c7 06 01 00 00 00    	movl   $0x1,(%esi)
40adf3:	8b 02                	mov    (%edx),%eax
40adf5:	8b 48 04             	mov    0x4(%eax),%ecx
40adf8:	8b 44 11 08          	mov    0x8(%ecx,%edx,1),%eax
40adfc:	03 ca                	add    %edx,%ecx
40adfe:	80 79 0d 00          	cmpb   $0x0,0xd(%ecx)
40ae02:	0f 85 b9 08 00 00    	jne    0x40b6c1
40ae08:	c7 40 14 00 00 00 00 	movl   $0x0,0x14(%eax)
40ae0f:	80 79 0d 00          	cmpb   $0x0,0xd(%ecx)
40ae13:	8b 41 08             	mov    0x8(%ecx),%eax
40ae16:	0f 85 ad 08 00 00    	jne    0x40b6c9
40ae1c:	c6 40 18 00          	movb   $0x0,0x18(%eax)
40ae20:	8b 02                	mov    (%edx),%eax
40ae22:	8b 40 04             	mov    0x4(%eax),%eax
40ae25:	03 c2                	add    %edx,%eax
40ae27:	89 44 24 4c          	mov    %eax,0x4c(%esp)
40ae2b:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
40ae2f:	0f 85 46 53 03 00    	jne    0x44017b
40ae35:	8b 70 08             	mov    0x8(%eax),%esi
40ae38:	8b 4e 28             	mov    0x28(%esi),%ecx
40ae3b:	85 c9                	test   %ecx,%ecx
40ae3d:	0f 85 43 53 03 00    	jne    0x440186
40ae43:	8b 46 2c             	mov    0x2c(%esi),%eax
40ae46:	83 f8 05             	cmp    $0x5,%eax
40ae49:	0f 8d 4d 53 03 00    	jge    0x44019c
40ae4f:	8b 44 24 4c          	mov    0x4c(%esp),%eax
40ae53:	c7 46 2c 01 00 00 00 	movl   $0x1,0x2c(%esi)
40ae5a:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
40ae61:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
40ae65:	8b 40 08             	mov    0x8(%eax),%eax
40ae68:	0f 85 63 08 00 00    	jne    0x40b6d1
40ae6e:	ff 74 24 30          	push   0x30(%esp)
40ae72:	8d 8a 70 04 00 00    	lea    0x470(%edx),%ecx
40ae78:	c6 40 30 00          	movb   $0x0,0x30(%eax)
40ae7c:	e8 0f e2 00 00       	call   0x419090
40ae81:	ff 74 24 18          	push   0x18(%esp)
40ae85:	8b 50 10             	mov    0x10(%eax),%edx
40ae88:	8b 48 14             	mov    0x14(%eax),%ecx
40ae8b:	8b 70 0c             	mov    0xc(%eax),%esi
40ae8e:	8d 44 24 68          	lea    0x68(%esp),%eax
40ae92:	50                   	push   %eax
40ae93:	8b 44 24 14          	mov    0x14(%esp),%eax
40ae97:	8b 00                	mov    (%eax),%eax
40ae99:	8b 0c 01             	mov    (%ecx,%eax,1),%ecx
40ae9c:	03 ca                	add    %edx,%ecx
40ae9e:	03 4c 24 14          	add    0x14(%esp),%ecx
40aea2:	ff d6                	call   *%esi
40aea4:	85 c0                	test   %eax,%eax
40aea6:	0f 88 da 5d 03 00    	js     0x440c86
40aeac:	33 f6                	xor    %esi,%esi
40aeae:	c7 44 24 64 84 fb 48 	movl   $0x48fb84,0x64(%esp)
40aeb5:	00
40aeb6:	39 74 24 6c          	cmp    %esi,0x6c(%esp)
40aeba:	76 36                	jbe    0x40aef2
40aebc:	8d 64 24 00          	lea    0x0(%esp),%esp
40aec0:	8b 44 24 68          	mov    0x68(%esp),%eax
40aec4:	8b 0c b0             	mov    (%eax,%esi,4),%ecx
40aec7:	89 4c 24 40          	mov    %ecx,0x40(%esp)
40aecb:	85 c9                	test   %ecx,%ecx
40aecd:	74 15                	je     0x40aee4
40aecf:	e8 1c ef ff ff       	call   0x409df0
40aed4:	ff 74 24 40          	push   0x40(%esp)
40aed8:	e8 8f 61 01 00       	call   0x42106c
40aedd:	8b 44 24 6c          	mov    0x6c(%esp),%eax
40aee1:	83 c4 04             	add    $0x4,%esp
40aee4:	c7 04 b0 00 00 00 00 	movl   $0x0,(%eax,%esi,4)
40aeeb:	46                   	inc    %esi
40aeec:	3b 74 24 6c          	cmp    0x6c(%esp),%esi
40aef0:	72 ce                	jb     0x40aec0
40aef2:	ff 74 24 68          	push   0x68(%esp)
40aef6:	c7 44 24 70 00 00 00 	movl   $0x0,0x70(%esp)
40aefd:	00
40aefe:	e8 69 61 01 00       	call   0x42106c
40af03:	83 c4 04             	add    $0x4,%esp
40af06:	8b 44 24 0c          	mov    0xc(%esp),%eax
40af0a:	83 b8 f8 00 00 00 01 	cmpl   $0x1,0xf8(%eax)
40af11:	0f 84 57 5e 03 00    	je     0x440d6e
40af17:	8b 75 0c             	mov    0xc(%ebp),%esi
40af1a:	e9 e8 f1 ff ff       	jmp    0x40a107
40af1f:	8b 44 24 10          	mov    0x10(%esp),%eax
40af23:	83 f8 16             	cmp    $0x16,%eax
40af26:	0f 85 58 02 00 00    	jne    0x40b184
40af2c:	8d 41 01             	lea    0x1(%ecx),%eax
40af2f:	c7 44 24 10 0b 00 00 	movl   $0xb,0x10(%esp)
40af36:	00
40af37:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40af3a:	8b 74 24 10          	mov    0x10(%esp),%esi
40af3e:	89 01                	mov    %eax,(%ecx)
40af40:	e9 2b f2 ff ff       	jmp    0x40a170
40af45:	8d 41 01             	lea    0x1(%ecx),%eax
40af48:	33 f6                	xor    %esi,%esi
40af4a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40af4d:	89 01                	mov    %eax,(%ecx)
40af4f:	e9 17 f2 ff ff       	jmp    0x40a16b
40af54:	8b 44 24 08          	mov    0x8(%esp),%eax
40af58:	3d 88 74 4c 00       	cmp    $0x4c7488,%eax
40af5d:	74 3e                	je     0x40af9d
40af5f:	83 78 0c 04          	cmpl   $0x4,0xc(%eax)
40af63:	0f 84 5f 06 00 00    	je     0x40b5c8
40af69:	8b 48 08             	mov    0x8(%eax),%ecx
40af6c:	85 c9                	test   %ecx,%ecx
40af6e:	0f 85 66 06 00 00    	jne    0x40b5da
40af74:	8b 40 0c             	mov    0xc(%eax),%eax
40af77:	83 f8 05             	cmp    $0x5,%eax
40af7a:	0f 8d c4 5a 03 00    	jge    0x440a44
40af80:	8b 44 24 08          	mov    0x8(%esp),%eax
40af84:	8b c8                	mov    %eax,%ecx
40af86:	68 88 74 4c 00       	push   $0x4c7488
40af8b:	c7 40 0c 01 00 00 00 	movl   $0x1,0xc(%eax)
40af92:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
40af98:	e8 23 eb ff ff       	call   0x409ac0
40af9d:	c6 44 24 2d 00       	movb   $0x0,0x2d(%esp)
40afa2:	e9 8f f2 ff ff       	jmp    0x40a236
40afa7:	8b c2                	mov    %edx,%eax
40afa9:	e9 ad fa ff ff       	jmp    0x40aa5b
40afae:	8b 74 24 24          	mov    0x24(%esp),%esi
40afb2:	c7 44 24 10 16 00 00 	movl   $0x16,0x10(%esp)
40afb9:	00
40afba:	85 f6                	test   %esi,%esi
40afbc:	0f 85 0e 02 00 00    	jne    0x40b1d0
40afc2:	81 ff 88 74 4c 00    	cmp    $0x4c7488,%edi
40afc8:	74 1d                	je     0x40afe7
40afca:	83 7f 0c 04          	cmpl   $0x4,0xc(%edi)
40afce:	0f 84 7e 06 00 00    	je     0x40b652
40afd4:	8b cf                	mov    %edi,%ecx
40afd6:	e8 45 ea ff ff       	call   0x409a20
40afdb:	68 88 74 4c 00       	push   $0x4c7488
40afe0:	8b cf                	mov    %edi,%ecx
40afe2:	e8 d9 ea ff ff       	call   0x409ac0
40afe7:	8b 54 24 08          	mov    0x8(%esp),%edx
40afeb:	8b 45 0c             	mov    0xc(%ebp),%eax
40afee:	46                   	inc    %esi
40afef:	89 74 24 24          	mov    %esi,0x24(%esp)
40aff3:	8b 08                	mov    (%eax),%ecx
40aff5:	8b 45 08             	mov    0x8(%ebp),%eax
40aff8:	8b 40 04             	mov    0x4(%eax),%eax
40affb:	8b 04 88             	mov    (%eax,%ecx,4),%eax
40affe:	83 fe 01             	cmp    $0x1,%esi
40b001:	0f 85 0b 02 00 00    	jne    0x40b212
40b007:	8b f7                	mov    %edi,%esi
40b009:	83 7e 0c 04          	cmpl   $0x4,0xc(%esi)