417c4c:	3b df                	cmp    %edi,%ebx
417c4e:	73 02                	jae    0x417c52
417c50:	8b fb                	mov    %ebx,%edi
417c52:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
417c55:	b8 ea 09 45 00       	mov    $0x4509ea,%eax
417c5a:	2b c1                	sub    %ecx,%eax
417c5c:	3d b8 08 45 00       	cmp    $0x4508b8,%eax
417c61:	73 07                	jae    0x417c6a
417c63:	b8 b8 08 45 00       	mov    $0x4508b8,%eax
417c68:	eb 07                	jmp    0x417c71
417c6a:	b8 ea 09 45 00       	mov    $0x4509ea,%eax
417c6f:	2b c1                	sub    %ecx,%eax
417c71:	50                   	push   %eax
417c72:	68 6c 29 40 00       	push   $0x40296c
417c77:	ff 15 74 23 45 00    	call   *0x452374
417c7d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
417c80:	83 c4 08             	add    $0x8,%esp
417c83:	41                   	inc    %ecx
417c84:	89 4d fc             	mov    %ecx,-0x4(%ebp)
417c87:	2b df                	sub    %edi,%ebx
417c89:	75 ab                	jne    0x417c36
417c8b:	68 68 29 40 00       	push   $0x402968
417c90:	ff 15 74 23 45 00    	call   *0x452374
417c96:	33 c9                	xor    %ecx,%ecx
417c98:	33 db                	xor    %ebx,%ebx
417c9a:	83 c4 04             	add    $0x4,%esp
417c9d:	89 4d f4             	mov    %ecx,-0xc(%ebp)
417ca0:	89 5d fc             	mov    %ebx,-0x4(%ebp)
417ca3:	39 4e 04             	cmp    %ecx,0x4(%esi)
417ca6:	0f 86 59 02 00 00    	jbe    0x417f05
417cac:	8d 64 24 00          	lea    0x0(%esp),%esp
417cb0:	8b 4e 08             	mov    0x8(%esi),%ecx
417cb3:	33 ff                	xor    %edi,%edi
417cb5:	8b 04 99             	mov    (%ecx,%ebx,4),%eax
417cb8:	8d 04 80             	lea    (%eax,%eax,4),%eax
417cbb:	8b 04 85 8c f0 44 00 	mov    0x44f08c(,%eax,4),%eax
417cc2:	85 c0                	test   %eax,%eax
417cc4:	74 29                	je     0x417cef
417cc6:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
417ccd:	8d 49 00             	lea    0x0(%ecx),%ecx
417cd0:	66 83 38 00          	cmpw   $0x0,(%eax)
417cd4:	74 16                	je     0x417cec
417cd6:	6a 2c                	push   $0x2c
417cd8:	50                   	push   %eax
417cd9:	ff 15 14 23 45 00    	call   *0x452314
417cdf:	83 c4 08             	add    $0x8,%esp
417ce2:	85 c0                	test   %eax,%eax
417ce4:	74 06                	je     0x417cec
417ce6:	47                   	inc    %edi
417ce7:	83 c0 02             	add    $0x2,%eax
417cea:	75 e4                	jne    0x417cd0
417cec:	8b 4e 08             	mov    0x8(%esi),%ecx
417cef:	8b 04 99             	mov    (%ecx,%ebx,4),%eax
417cf2:	83 f8 4e             	cmp    $0x4e,%eax
417cf5:	0f 84 02 01 00 00    	je     0x417dfd
417cfb:	83 f8 01             	cmp    $0x1,%eax
417cfe:	0f 84 f9 00 00 00    	je     0x417dfd
417d04:	66 83 7e 0c 2c       	cmpw   $0x2c,0xc(%esi)
417d09:	0f 85 9d 00 00 00    	jne    0x417dac
417d0f:	66 83 7e 0e 00       	cmpw   $0x0,0xe(%esi)
417d14:	0f 85 92 00 00 00    	jne    0x417dac
417d1a:	8d 1c 80             	lea    (%eax,%eax,4),%ebx
417d1d:	83 3c 9d 8c f0 44 00 	cmpl   $0x0,0x44f08c(,%ebx,4)
417d24:	00
417d25:	0f 84 81 00 00 00    	je     0x417dac
417d2b:	8b 0c 9d 88 f0 44 00 	mov    0x44f088(,%ebx,4),%ecx
417d32:	8d 51 02             	lea    0x2(%ecx),%edx
417d35:	66 8b 01             	mov    (%ecx),%ax
417d38:	83 c1 02             	add    $0x2,%ecx
417d3b:	66 85 c0             	test   %ax,%ax
417d3e:	75 f5                	jne    0x417d35
417d40:	2b ca                	sub    %edx,%ecx
417d42:	b8 5a fc 44 00       	mov    $0x44fc5a,%eax
417d47:	8d 14 3f             	lea    (%edi,%edi,1),%edx
417d4a:	d1 f9                	sar    $1,%ecx
417d4c:	2b c2                	sub    %edx,%eax
417d4e:	3d 28 fb 44 00       	cmp    $0x44fb28,%eax
417d53:	73 07                	jae    0x417d5c
417d55:	ba 28 fb 44 00       	mov    $0x44fb28,%edx
417d5a:	eb 0a                	jmp    0x417d66
417d5c:	ba 5a fc 44 00       	mov    $0x44fc5a,%edx
417d61:	8d 04 3f             	lea    (%edi,%edi,1),%eax
417d64:	2b d0                	sub    %eax,%edx
417d66:	8b 04 9d 84 f0 44 00 	mov    0x44f084(,%ebx,4),%eax
417d6d:	2b c1                	sub    %ecx,%eax
417d6f:	2b c7                	sub    %edi,%eax
417d71:	8d 0c 00             	lea    (%eax,%eax,1),%ecx
417d74:	b8 42 05 45 00       	mov    $0x450542,%eax
417d79:	2b c1                	sub    %ecx,%eax
417d7b:	3d 10 04 45 00       	cmp    $0x450410,%eax
417d80:	73 07                	jae    0x417d89
417d82:	b8 10 04 45 00       	mov    $0x450410,%eax
417d87:	eb 07                	jmp    0x417d90
417d89:	b8 42 05 45 00       	mov    $0x450542,%eax
417d8e:	2b c1                	sub    %ecx,%eax
417d90:	ff 34 9d 88 f0 44 00 	push   0x44f088(,%ebx,4)
417d97:	52                   	push   %edx
417d98:	50                   	push   %eax
417d99:	68 48 32 40 00       	push   $0x403248
417d9e:	ff 15 74 23 45 00    	call   *0x452374
417da4:	83 c4 10             	add    $0x10,%esp
417da7:	e9 ab 00 00 00       	jmp    0x417e57
417dac:	8d 14 80             	lea    (%eax,%eax,4),%edx
417daf:	8b 3c 95 88 f0 44 00 	mov    0x44f088(,%edx,4),%edi
417db6:	8b cf                	mov    %edi,%ecx
417db8:	8d 59 02             	lea    0x2(%ecx),%ebx
417dbb:	eb 03                	jmp    0x417dc0
417dbd:	8d 49 00             	lea    0x0(%ecx),%ecx
417dc0:	66 8b 01             	mov    (%ecx),%ax
417dc3:	83 c1 02             	add    $0x2,%ecx
417dc6:	66 85 c0             	test   %ax,%ax
417dc9:	75 f5                	jne    0x417dc0
417dcb:	8b 04 95 84 f0 44 00 	mov    0x44f084(,%edx,4),%eax
417dd2:	2b cb                	sub    %ebx,%ecx
417dd4:	d1 f9                	sar    $1,%ecx
417dd6:	2b c1                	sub    %ecx,%eax
417dd8:	8d 0c 00             	lea    (%eax,%eax,1),%ecx
417ddb:	b8 42 05 45 00       	mov    $0x450542,%eax
417de0:	2b c1                	sub    %ecx,%eax
417de2:	3d 10 04 45 00       	cmp    $0x450410,%eax
417de7:	73 09                	jae    0x417df2
417de9:	b8 10 04 45 00       	mov    $0x450410,%eax
417dee:	57                   	push   %edi
417def:	50                   	push   %eax
417df0:	eb 57                	jmp    0x417e49
417df2:	b8 42 05 45 00       	mov    $0x450542,%eax
417df7:	2b c1                	sub    %ecx,%eax
417df9:	57                   	push   %edi
417dfa:	50                   	push   %eax
417dfb:	eb 4c                	jmp    0x417e49
417dfd:	8d 14 80             	lea    (%eax,%eax,4),%edx
417e00:	8b 3c 95 88 f0 44 00 	mov    0x44f088(,%edx,4),%edi
417e07:	8b cf                	mov    %edi,%ecx
417e09:	8d 59 02             	lea    0x2(%ecx),%ebx
417e0c:	8d 64 24 00          	lea    0x0(%esp),%esp
417e10:	66 8b 01             	mov    (%ecx),%ax
417e13:	83 c1 02             	add    $0x2,%ecx
417e16:	66 85 c0             	test   %ax,%ax
417e19:	75 f5                	jne    0x417e10
417e1b:	8b 04 95 84 f0 44 00 	mov    0x44f084(,%edx,4),%eax
417e22:	2b cb                	sub    %ebx,%ecx
417e24:	d1 f9                	sar    $1,%ecx
417e26:	2b c1                	sub    %ecx,%eax
417e28:	8d 0c 00             	lea    (%eax,%eax,1),%ecx
417e2b:	b8 42 05 45 00       	mov    $0x450542,%eax
417e30:	2b c1                	sub    %ecx,%eax
417e32:	3d 10 04 45 00       	cmp    $0x450410,%eax
417e37:	73 07                	jae    0x417e40
417e39:	b8 10 04 45 00       	mov    $0x450410,%eax
417e3e:	eb 07                	jmp    0x417e47
417e40:	b8 42 05 45 00       	mov    $0x450542,%eax
417e45:	2b c1                	sub    %ecx,%eax
417e47:	50                   	push   %eax
417e48:	57                   	push   %edi
417e49:	68 74 29 40 00       	push   $0x402974
417e4e:	ff 15 74 23 45 00    	call   *0x452374
417e54:	83 c4 0c             	add    $0xc,%esp
417e57:	8b 46 04             	mov    0x4(%esi),%eax
417e5a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
417e5d:	48                   	dec    %eax
417e5e:	3b d8                	cmp    %eax,%ebx
417e60:	8d 46 0c             	lea    0xc(%esi),%eax
417e63:	75 05                	jne    0x417e6a
417e65:	b8 68 29 40 00       	mov    $0x402968,%eax
417e6a:	50                   	push   %eax
417e6b:	68 6c 29 40 00       	push   $0x40296c
417e70:	ff 15 74 23 45 00    	call   *0x452374
417e76:	8b 46 04             	mov    0x4(%esi),%eax
417e79:	43                   	inc    %ebx
417e7a:	83 c4 08             	add    $0x8,%esp
417e7d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
417e80:	3b d8                	cmp    %eax,%ebx
417e82:	0f 82 28 fe ff ff    	jb     0x417cb0
417e88:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
417e8c:	74 77                	je     0x417f05
417e8e:	33 ff                	xor    %edi,%edi
417e90:	85 c0                	test   %eax,%eax
417e92:	74 71                	je     0x417f05
417e94:	8b 46 08             	mov    0x8(%esi),%eax
417e97:	8b 04 b8             	mov    (%eax,%edi,4),%eax
417e9a:	8d 04 80             	lea    (%eax,%eax,4),%eax
417e9d:	8b 0c 85 8c f0 44 00 	mov    0x44f08c(,%eax,4),%ecx
417ea4:	85 c9                	test   %ecx,%ecx
417ea6:	74 03                	je     0x417eab
417ea8:	51                   	push   %ecx
417ea9:	eb 27                	jmp    0x417ed2
417eab:	8b 04 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%eax
417eb2:	8d 0c 00             	lea    (%eax,%eax,1),%ecx
417eb5:	b8 42 05 45 00       	mov    $0x450542,%eax
417eba:	2b c1                	sub    %ecx,%eax
417ebc:	3d 10 04 45 00       	cmp    $0x450410,%eax
417ec1:	73 07                	jae    0x417eca
417ec3:	b8 10 04 45 00       	mov    $0x450410,%eax
417ec8:	eb 07                	jmp    0x417ed1
417eca:	b8 42 05 45 00       	mov    $0x450542,%eax
417ecf:	2b c1                	sub    %ecx,%eax
417ed1:	50                   	push   %eax
417ed2:	68 6c 29 40 00       	push   $0x40296c
417ed7:	ff 15 74 23 45 00    	call   *0x452374
417edd:	8b 46 04             	mov    0x4(%esi),%eax
417ee0:	83 c4 08             	add    $0x8,%esp
417ee3:	48                   	dec    %eax
417ee4:	3b f8                	cmp    %eax,%edi
417ee6:	8d 46 0c             	lea    0xc(%esi),%eax
417ee9:	75 05                	jne    0x417ef0
417eeb:	b8 68 29 40 00       	mov    $0x402968,%eax
417ef0:	50                   	push   %eax
417ef1:	68 6c 29 40 00       	push   $0x40296c
417ef6:	ff 15 74 23 45 00    	call   *0x452374
417efc:	47                   	inc    %edi
417efd:	83 c4 08             	add    $0x8,%esp
417f00:	3b 7e 04             	cmp    0x4(%esi),%edi
417f03:	72 8f                	jb     0x417e94
417f05:	8b 4d f8             	mov    -0x8(%ebp),%ecx
417f08:	33 db                	xor    %ebx,%ebx
417f0a:	85 c9                	test   %ecx,%ecx
417f0c:	74 59                	je     0x417f67
417f0e:	8b ff                	mov    %edi,%edi
417f10:	3b 5e 04             	cmp    0x4(%esi),%ebx
417f13:	73 52                	jae    0x417f67
417f15:	8b 46 08             	mov    0x8(%esi),%eax
417f18:	8b 04 98             	mov    (%eax,%ebx,4),%eax
417f1b:	8d 04 80             	lea    (%eax,%eax,4),%eax
417f1e:	8b 3c 85 84 f0 44 00 	mov    0x44f084(,%eax,4),%edi
417f25:	47                   	inc    %edi
417f26:	3b cf                	cmp    %edi,%ecx
417f28:	73 02                	jae    0x417f2c
417f2a:	8b f9                	mov    %ecx,%edi
417f2c:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
417f2f:	b8 8a fe 44 00       	mov    $0x44fe8a,%eax
417f34:	2b c1                	sub    %ecx,%eax
417f36:	3d 58 fd 44 00       	cmp    $0x44fd58,%eax
417f3b:	73 07                	jae    0x417f44
417f3d:	b8 58 fd 44 00       	mov    $0x44fd58,%eax
417f42:	eb 07                	jmp    0x417f4b
417f44:	b8 8a fe 44 00       	mov    $0x44fe8a,%eax
417f49:	2b c1                	sub    %ecx,%eax
417f4b:	50                   	push   %eax
417f4c:	68 6c 29 40 00       	push   $0x40296c
417f51:	ff 15 74 23 45 00    	call   *0x452374
417f57:	8b 4d f8             	mov    -0x8(%ebp),%ecx
417f5a:	83 c4 08             	add    $0x8,%esp
417f5d:	2b cf                	sub    %edi,%ecx
417f5f:	43                   	inc    %ebx
417f60:	89 4d f8             	mov    %ecx,-0x8(%ebp)
417f63:	85 c9                	test   %ecx,%ecx
417f65:	75 a9                	jne    0x417f10
417f67:	68 68 29 40 00       	push   $0x402968
417f6c:	ff 15 74 23 45 00    	call   *0x452374
417f72:	83 c4 04             	add    $0x4,%esp
417f75:	8d 8d 98 fe ff ff    	lea    -0x168(%ebp),%ecx
417f7b:	e8 90 d6 ff ff       	call   0x415610
417f80:	8d 8d 08 ff ff ff    	lea    -0xf8(%ebp),%ecx
417f86:	e8 85 d6 ff ff       	call   0x415610
417f8b:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
417f91:	e8 7a d6 ff ff       	call   0x415610
417f96:	8b 4d f0             	mov    -0x10(%ebp),%ecx
417f99:	8d 95 98 fe ff ff    	lea    -0x168(%ebp),%edx
417f9f:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
417fa6:	e8 55 e3 ff ff       	call   0x416300
417fab:	8b d8                	mov    %eax,%ebx
417fad:	85 db                	test   %ebx,%ebx
417faf:	78 57                	js     0x418008
417fb1:	33 ff                	xor    %edi,%edi
417fb3:	39 7e 04             	cmp    %edi,0x4(%esi)
417fb6:	76 42                	jbe    0x417ffa
417fb8:	8b 46 08             	mov    0x8(%esi),%eax
417fbb:	8b ce                	mov    %esi,%ecx
417fbd:	8b 55 f0             	mov    -0x10(%ebp),%edx
417fc0:	ff 34 b8             	push   (%eax,%edi,4)
417fc3:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
417fc9:	50                   	push   %eax
417fca:	e8 c1 e4 ff ff       	call   0x416490
417fcf:	8b d8                	mov    %eax,%ebx
417fd1:	85 db                	test   %ebx,%ebx
417fd3:	78 33                	js     0x418008
417fd5:	8b 46 04             	mov    0x4(%esi),%eax
417fd8:	48                   	dec    %eax
417fd9:	3b f8                	cmp    %eax,%edi
417fdb:	8d 46 0c             	lea    0xc(%esi),%eax
417fde:	75 05                	jne    0x417fe5
417fe0:	b8 68 29 40 00       	mov    $0x402968,%eax
417fe5:	50                   	push   %eax
417fe6:	68 6c 29 40 00       	push   $0x40296c
417feb:	ff 15 74 23 45 00    	call   *0x452374
417ff1:	47                   	inc    %edi
417ff2:	83 c4 08             	add    $0x8,%esp
417ff5:	3b 7e 04             	cmp    0x4(%esi),%edi
417ff8:	72 be                	jb     0x417fb8
417ffa:	68 68 29 40 00       	push   $0x402968
417fff:	ff 15 74 23 45 00    	call   *0x452374
418005:	83 c4 04             	add    $0x4,%esp
418008:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
41800e:	e8 8d d6 ff ff       	call   0x4156a0
418013:	8d 8d 08 ff ff ff    	lea    -0xf8(%ebp),%ecx
418019:	e8 82 d6 ff ff       	call   0x4156a0
41801e:	8d 8d 98 fe ff ff    	lea    -0x168(%ebp),%ecx
418024:	e8 77 d6 ff ff       	call   0x4156a0
418029:	5f                   	pop    %edi
41802a:	5e                   	pop    %esi
41802b:	8b c3                	mov    %ebx,%eax
41802d:	5b                   	pop    %ebx
41802e:	8b e5                	mov    %ebp,%esp
418030:	5d                   	pop    %ebp
418031:	c3                   	ret
418032:	cc                   	int3
418033:	cc                   	int3
418034:	cc                   	int3
418035:	cc                   	int3
418036:	cc                   	int3
418037:	cc                   	int3
418038:	cc                   	int3
418039:	cc                   	int3
41803a:	cc                   	int3
41803b:	cc                   	int3
41803c:	cc                   	int3
41803d:	cc                   	int3
41803e:	cc                   	int3
41803f:	cc                   	int3
418040:	8b ff                	mov    %edi,%edi
418042:	55                   	push   %ebp
418043:	8b ec                	mov    %esp,%ebp
418045:	83 ec 24             	sub    $0x24,%esp
418048:	57                   	push   %edi
418049:	8b 7d 0c             	mov    0xc(%ebp),%edi
41804c:	89 55 dc             	mov    %edx,-0x24(%ebp)
41804f:	ff 77 38             	push   0x38(%edi)
418052:	6a 00                	push   $0x0
418054:	ff 35 00 12 45 00    	push   0x451200
41805a:	ff 15 24 21 45 00    	call   *0x452124
418060:	89 45 ec             	mov    %eax,-0x14(%ebp)
418063:	85 c0                	test   %eax,%eax
418065:	0f 84 62 03 00 00    	je     0x4183cd
41806b:	53                   	push   %ebx
41806c:	56                   	push   %esi
41806d:	ff 77 38             	push   0x38(%edi)
418070:	6a 00                	push   $0x0
418072:	50                   	push   %eax
418073:	e8 e9 59 03 00       	call   0x44da61
418078:	33 f6                	xor    %esi,%esi
41807a:	83 c4 0c             	add    $0xc,%esp
41807d:	89 75 f0             	mov    %esi,-0x10(%ebp)
418080:	39 77 30             	cmp    %esi,0x30(%edi)
418083:	0f 86 67 01 00 00    	jbe    0x4181f0
418089:	33 c0                	xor    %eax,%eax
41808b:	89 45 e0             	mov    %eax,-0x20(%ebp)
41808e:	8b ff                	mov    %edi,%edi
418090:	8b 5f 34             	mov    0x34(%edi),%ebx
418093:	03 d8                	add    %eax,%ebx
418095:	89 5d f4             	mov    %ebx,-0xc(%ebp)