43fbc5:	8d 4d d8             	lea    -0x28(%ebp),%ecx
43fbc8:	e8 73 b4 fc ff       	call   0x40b040
43fbcd:	8d 45 d8             	lea    -0x28(%ebp),%eax
43fbd0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
43fbd7:	50                   	push   %eax
43fbd8:	8d 4d b0             	lea    -0x50(%ebp),%ecx
43fbdb:	e8 f0 11 00 00       	call   0x440dd0
43fbe0:	68 98 21 4c 00       	push   $0x4c2198
43fbe5:	8d 45 b0             	lea    -0x50(%ebp),%eax
43fbe8:	50                   	push   %eax
43fbe9:	e8 c0 b9 02 00       	call   0x46b5ae
43fbee:	cc                   	int3
43fbef:	cc                   	int3
43fbf0:	55                   	push   %ebp
43fbf1:	8b ec                	mov    %esp,%ebp
43fbf3:	6a ff                	push   $0xffffffff
43fbf5:	68 95 aa 49 00       	push   $0x49aa95
43fbfa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
43fc00:	50                   	push   %eax
43fc01:	83 ec 68             	sub    $0x68,%esp
43fc04:	a1 14 40 4c 00       	mov    0x4c4014,%eax
43fc09:	33 c5                	xor    %ebp,%eax
43fc0b:	89 45 f0             	mov    %eax,-0x10(%ebp)
43fc0e:	53                   	push   %ebx
43fc0f:	56                   	push   %esi
43fc10:	57                   	push   %edi
43fc11:	50                   	push   %eax
43fc12:	8d 45 f4             	lea    -0xc(%ebp),%eax
43fc15:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
43fc1b:	8b f1                	mov    %ecx,%esi
43fc1d:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
43fc21:	8b 45 08             	mov    0x8(%ebp),%eax
43fc24:	89 45 a8             	mov    %eax,-0x58(%ebp)
43fc27:	0f 84 4a 05 00 00    	je     0x440177
43fc2d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43fc30:	8d 5e 24             	lea    0x24(%esi),%ebx
43fc33:	89 5d 90             	mov    %ebx,-0x70(%ebp)
43fc36:	8d 56 3c             	lea    0x3c(%esi),%edx
43fc39:	89 55 94             	mov    %edx,-0x6c(%ebp)
43fc3c:	85 c9                	test   %ecx,%ecx
43fc3e:	0f 84 6f 03 00 00    	je     0x43ffb3
43fc44:	80 7e 24 00          	cmpb   $0x0,0x24(%esi)
43fc48:	8b 3a                	mov    (%edx),%edi
43fc4a:	8d 1c 0f             	lea    (%edi,%ecx,1),%ebx
43fc4d:	0f 85 fd 00 00 00    	jne    0x43fd50
43fc53:	8b 4e 18             	mov    0x18(%esi),%ecx
43fc56:	3b d9                	cmp    %ecx,%ebx
43fc58:	0f 82 43 03 00 00    	jb     0x43ffa1
43fc5e:	2b cf                	sub    %edi,%ecx
43fc60:	51                   	push   %ecx
43fc61:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
43fc64:	8d 4e 28             	lea    0x28(%esi),%ecx
43fc67:	50                   	push   %eax
43fc68:	e8 23 fd ff ff       	call   0x43f990
43fc6d:	8b 56 40             	mov    0x40(%esi),%edx
43fc70:	8b 46 2c             	mov    0x2c(%esi),%eax
43fc73:	8b 4e 30             	mov    0x30(%esi),%ecx
43fc76:	2b c2                	sub    %edx,%eax
43fc78:	8b 7e 3c             	mov    0x3c(%esi),%edi
43fc7b:	03 c1                	add    %ecx,%eax
43fc7d:	89 4d ac             	mov    %ecx,-0x54(%ebp)
43fc80:	3b f8                	cmp    %eax,%edi
43fc82:	8d 4e 3c             	lea    0x3c(%esi),%ecx
43fc85:	89 55 a4             	mov    %edx,-0x5c(%ebp)
43fc88:	8d 55 8c             	lea    -0x74(%ebp),%edx
43fc8b:	89 45 8c             	mov    %eax,-0x74(%ebp)
43fc8e:	0f 42 d1             	cmovb  %ecx,%edx
43fc91:	8d 4e 18             	lea    0x18(%esi),%ecx
43fc94:	8b 02                	mov    (%edx),%eax
43fc96:	3b 46 18             	cmp    0x18(%esi),%eax
43fc99:	0f 42 ca             	cmovb  %edx,%ecx
43fc9c:	8b 55 a4             	mov    -0x5c(%ebp),%edx
43fc9f:	8b 01                	mov    (%ecx),%eax
43fca1:	03 d0                	add    %eax,%edx
43fca3:	8b 4d ac             	mov    -0x54(%ebp),%ecx
43fca6:	2b f8                	sub    %eax,%edi
43fca8:	89 46 18             	mov    %eax,0x18(%esi)
43fcab:	89 56 40             	mov    %edx,0x40(%esi)
43fcae:	89 7e 3c             	mov    %edi,0x3c(%esi)
43fcb1:	74 09                	je     0x43fcbc
43fcb3:	8b 46 2c             	mov    0x2c(%esi),%eax
43fcb6:	03 c1                	add    %ecx,%eax
43fcb8:	3b d0                	cmp    %eax,%edx
43fcba:	75 03                	jne    0x43fcbf
43fcbc:	89 4e 40             	mov    %ecx,0x40(%esi)
43fcbf:	8b 06                	mov    (%esi),%eax
43fcc1:	ff 75 a4             	push   -0x5c(%ebp)
43fcc4:	8b b8 c4 00 00 00    	mov    0xc4(%eax),%edi
43fcca:	8b cf                	mov    %edi,%ecx
43fccc:	ff 15 d4 e2 49 00    	call   *0x49e2d4
43fcd2:	8b ce                	mov    %esi,%ecx
43fcd4:	ff d7                	call   *%edi
43fcd6:	8b 4e 1c             	mov    0x1c(%esi),%ecx
43fcd9:	33 d2                	xor    %edx,%edx
43fcdb:	8b 46 20             	mov    0x20(%esi),%eax
43fcde:	89 4d 8c             	mov    %ecx,-0x74(%ebp)
43fce1:	8d 04 48             	lea    (%eax,%ecx,2),%eax
43fce4:	83 c0 fe             	add    $0xfffffffe,%eax
43fce7:	f7 f1                	div    %ecx
43fce9:	8b 56 2c             	mov    0x2c(%esi),%edx
43fcec:	0f af c8             	imul   %eax,%ecx
43fcef:	89 45 ac             	mov    %eax,-0x54(%ebp)
43fcf2:	8b 46 30             	mov    0x30(%esi),%eax
43fcf5:	89 45 a0             	mov    %eax,-0x60(%ebp)
43fcf8:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
43fcfb:	3b d1                	cmp    %ecx,%edx
43fcfd:	74 26                	je     0x43fd25
43fcff:	ff 75 a0             	push   -0x60(%ebp)
43fd02:	8b f8                	mov    %eax,%edi
43fd04:	8b ca                	mov    %edx,%ecx
43fd06:	32 c0                	xor    %al,%al
43fd08:	f3 aa                	rep stos %al,%es:(%edi)
43fd0a:	e8 73 99 03 00       	call   0x479682
43fd0f:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
43fd12:	83 c4 04             	add    $0x4,%esp
43fd15:	85 c9                	test   %ecx,%ecx
43fd17:	75 04                	jne    0x43fd1d
43fd19:	33 c0                	xor    %eax,%eax
43fd1b:	eb 08                	jmp    0x43fd25
43fd1d:	e8 3e c3 01 00       	call   0x45c060
43fd22:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
43fd25:	89 46 30             	mov    %eax,0x30(%esi)
43fd28:	8d 56 3c             	lea    0x3c(%esi),%edx
43fd2b:	89 4e 2c             	mov    %ecx,0x2c(%esi)
43fd2e:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
43fd31:	89 46 40             	mov    %eax,0x40(%esi)
43fd34:	8b 45 a8             	mov    -0x58(%ebp),%eax
43fd37:	03 45 9c             	add    -0x64(%ebp),%eax
43fd3a:	89 4e 34             	mov    %ecx,0x34(%esi)
43fd3d:	8b 4d ac             	mov    -0x54(%ebp),%ecx
43fd40:	89 4e 38             	mov    %ecx,0x38(%esi)
43fd43:	c7 02 00 00 00 00    	movl   $0x0,(%edx)
43fd49:	2b 5e 18             	sub    0x18(%esi),%ebx
43fd4c:	c6 46 24 01          	movb   $0x1,0x24(%esi)
43fd50:	8b 7e 1c             	mov    0x1c(%esi),%edi
43fd53:	8b 4e 20             	mov    0x20(%esi),%ecx
43fd56:	89 45 a8             	mov    %eax,-0x58(%ebp)
43fd59:	89 4d ac             	mov    %ecx,-0x54(%ebp)
43fd5c:	83 ff 01             	cmp    $0x1,%edi
43fd5f:	0f 85 e6 00 00 00    	jne    0x43fe4b
43fd65:	3b d9                	cmp    %ecx,%ebx
43fd67:	0f 86 31 02 00 00    	jbe    0x43ff9e
43fd6d:	8b c1                	mov    %ecx,%eax
43fd6f:	eb 03                	jmp    0x43fd74
43fd71:	8d 56 3c             	lea    0x3c(%esi),%edx
43fd74:	8b 3a                	mov    (%edx),%edi
43fd76:	8b c8                	mov    %eax,%ecx
43fd78:	89 7d 8c             	mov    %edi,-0x74(%ebp)
43fd7b:	89 4d ac             	mov    %ecx,-0x54(%ebp)
43fd7e:	85 ff                	test   %edi,%edi
43fd80:	0f 84 88 00 00 00    	je     0x43fe0e
43fd86:	8b 4e 30             	mov    0x30(%esi),%ecx
43fd89:	8b d3                	mov    %ebx,%edx
43fd8b:	2b d0                	sub    %eax,%edx
43fd8d:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
43fd90:	8b 46 40             	mov    0x40(%esi),%eax
43fd93:	89 45 ac             	mov    %eax,-0x54(%ebp)
43fd96:	8b 46 2c             	mov    0x2c(%esi),%eax
43fd99:	89 45 98             	mov    %eax,-0x68(%ebp)
43fd9c:	2b 45 ac             	sub    -0x54(%ebp),%eax
43fd9f:	03 c1                	add    %ecx,%eax
43fda1:	89 55 a0             	mov    %edx,-0x60(%ebp)
43fda4:	3b f8                	cmp    %eax,%edi
43fda6:	89 45 9c             	mov    %eax,-0x64(%ebp)
43fda9:	8d 7e 3c             	lea    0x3c(%esi),%edi
43fdac:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
43fdaf:	0f 42 cf             	cmovb  %edi,%ecx
43fdb2:	8d 45 a0             	lea    -0x60(%ebp),%eax
43fdb5:	39 11                	cmp    %edx,(%ecx)
43fdb7:	8b 55 a4             	mov    -0x5c(%ebp),%edx
43fdba:	0f 42 c1             	cmovb  %ecx,%eax
43fdbd:	8b 08                	mov    (%eax),%ecx
43fdbf:	8b 45 ac             	mov    -0x54(%ebp),%eax
43fdc2:	03 c1                	add    %ecx,%eax
43fdc4:	89 4d a0             	mov    %ecx,-0x60(%ebp)
43fdc7:	89 45 9c             	mov    %eax,-0x64(%ebp)
43fdca:	89 46 40             	mov    %eax,0x40(%esi)
43fdcd:	8b 45 8c             	mov    -0x74(%ebp),%eax
43fdd0:	2b c1                	sub    %ecx,%eax
43fdd2:	89 07                	mov    %eax,(%edi)
43fdd4:	74 0a                	je     0x43fde0
43fdd6:	8b 45 98             	mov    -0x68(%ebp),%eax
43fdd9:	03 c2                	add    %edx,%eax
43fddb:	39 45 9c             	cmp    %eax,-0x64(%ebp)
43fdde:	75 03                	jne    0x43fde3
43fde0:	89 56 40             	mov    %edx,0x40(%esi)
43fde3:	8b 06                	mov    (%esi),%eax
43fde5:	51                   	push   %ecx
43fde6:	ff 75 ac             	push   -0x54(%ebp)
43fde9:	8b b8 d0 00 00 00    	mov    0xd0(%eax),%edi
43fdef:	8b cf                	mov    %edi,%ecx
43fdf1:	ff 15 d4 e2 49 00    	call   *0x49e2d4
43fdf7:	8b ce                	mov    %esi,%ecx
43fdf9:	ff d7                	call   *%edi
43fdfb:	8b 4e 20             	mov    0x20(%esi),%ecx
43fdfe:	8b c1                	mov    %ecx,%eax
43fe00:	2b 5d a0             	sub    -0x60(%ebp),%ebx
43fe03:	89 4d ac             	mov    %ecx,-0x54(%ebp)
43fe06:	3b d9                	cmp    %ecx,%ebx
43fe08:	0f 87 63 ff ff ff    	ja     0x43fd71
43fe0e:	3b d9                	cmp    %ecx,%ebx
43fe10:	0f 86 88 01 00 00    	jbe    0x43ff9e
43fe16:	8b 3e                	mov    (%esi),%edi
43fe18:	2b d9                	sub    %ecx,%ebx
43fe1a:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
43fe1e:	53                   	push   %ebx
43fe1f:	ff 75 a8             	push   -0x58(%ebp)
43fe22:	74 08                	je     0x43fe2c
43fe24:	8b bf d0 00 00 00    	mov    0xd0(%edi),%edi
43fe2a:	eb 06                	jmp    0x43fe32
43fe2c:	8b bf cc 00 00 00    	mov    0xcc(%edi),%edi
43fe32:	8b cf                	mov    %edi,%ecx
43fe34:	ff 15 d4 e2 49 00    	call   *0x49e2d4
43fe3a:	8b ce                	mov    %esi,%ecx
43fe3c:	ff d7                	call   *%edi
43fe3e:	8b 45 a8             	mov    -0x58(%ebp),%eax
43fe41:	03 c3                	add    %ebx,%eax
43fe43:	8b 5d ac             	mov    -0x54(%ebp),%ebx
43fe46:	e9 56 01 00 00       	jmp    0x43ffa1
43fe4b:	8d 04 0f             	lea    (%edi,%ecx,1),%eax
43fe4e:	3b d8                	cmp    %eax,%ebx
43fe50:	72 73                	jb     0x43fec5
43fe52:	89 7d ac             	mov    %edi,-0x54(%ebp)
43fe55:	8b 02                	mov    (%edx),%eax
43fe57:	89 7d a0             	mov    %edi,-0x60(%ebp)
43fe5a:	8b 7d ac             	mov    -0x54(%ebp),%edi
43fe5d:	89 45 98             	mov    %eax,-0x68(%ebp)
43fe60:	3b c7                	cmp    %edi,%eax
43fe62:	72 61                	jb     0x43fec5
43fe64:	8b 4e 34             	mov    0x34(%esi),%ecx
43fe67:	3b c1                	cmp    %ecx,%eax
43fe69:	72 2b                	jb     0x43fe96
43fe6b:	8b 46 40             	mov    0x40(%esi),%eax
43fe6e:	89 45 9c             	mov    %eax,-0x64(%ebp)
43fe71:	8d 3c 08             	lea    (%eax,%ecx,1),%edi
43fe74:	89 7e 40             	mov    %edi,0x40(%esi)
43fe77:	8b cf                	mov    %edi,%ecx
43fe79:	8b 46 2c             	mov    0x2c(%esi),%eax
43fe7c:	03 46 30             	add    0x30(%esi),%eax
43fe7f:	3b f8                	cmp    %eax,%edi
43fe81:	8b 45 98             	mov    -0x68(%ebp),%eax
43fe84:	0f 44 4e 30          	cmove  0x30(%esi),%ecx
43fe88:	2b 46 34             	sub    0x34(%esi),%eax
43fe8b:	89 4e 40             	mov    %ecx,0x40(%esi)
43fe8e:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
43fe91:	89 46 3c             	mov    %eax,0x3c(%esi)
43fe94:	eb 02                	jmp    0x43fe98
43fe96:	33 c9                	xor    %ecx,%ecx
43fe98:	8b 06                	mov    (%esi),%eax
43fe9a:	ff 75 a0             	push   -0x60(%ebp)
43fe9d:	51                   	push   %ecx
43fe9e:	8b b8 d0 00 00 00    	mov    0xd0(%eax),%edi
43fea4:	8b cf                	mov    %edi,%ecx
43fea6:	ff 15 d4 e2 49 00    	call   *0x49e2d4
43feac:	8b ce                	mov    %esi,%ecx
43feae:	ff d7                	call   *%edi
43feb0:	8b 7e 1c             	mov    0x1c(%esi),%edi
43feb3:	8d 56 3c             	lea    0x3c(%esi),%edx
43feb6:	8b 4e 20             	mov    0x20(%esi),%ecx
43feb9:	2b df                	sub    %edi,%ebx
43febb:	89 7d ac             	mov    %edi,-0x54(%ebp)
43febe:	8d 04 39             	lea    (%ecx,%edi,1),%eax
43fec1:	3b d8                	cmp    %eax,%ebx
43fec3:	73 90                	jae    0x43fe55
43fec5:	8d 04 0f             	lea    (%edi,%ecx,1),%eax
43fec8:	89 7d ac             	mov    %edi,-0x54(%ebp)
43fecb:	3b d8                	cmp    %eax,%ebx
43fecd:	72 73                	jb     0x43ff42
43fecf:	8b 02                	mov    (%edx),%eax
43fed1:	8b d7                	mov    %edi,%edx
43fed3:	89 55 ac             	mov    %edx,-0x54(%ebp)
43fed6:	85 c0                	test   %eax,%eax
43fed8:	74 6b                	je     0x43ff45
43feda:	2b f8                	sub    %eax,%edi
43fedc:	8d 4e 28             	lea    0x28(%esi),%ecx
43fedf:	57                   	push   %edi
43fee0:	ff 75 a8             	push   -0x58(%ebp)
43fee3:	e8 a8 fa ff ff       	call   0x43f990
43fee8:	01 7d a8             	add    %edi,-0x58(%ebp)
43feeb:	8b 4e 34             	mov    0x34(%esi),%ecx
43feee:	39 4e 3c             	cmp    %ecx,0x3c(%esi)
43fef1:	72 2b                	jb     0x43ff1e
43fef3:	8b 46 40             	mov    0x40(%esi),%eax
43fef6:	89 45 9c             	mov    %eax,-0x64(%ebp)
43fef9:	8d 3c 08             	lea    (%eax,%ecx,1),%edi
43fefc:	89 7e 40             	mov    %edi,0x40(%esi)
43feff:	8b cf                	mov    %edi,%ecx
43ff01:	8b 46 2c             	mov    0x2c(%esi),%eax
43ff04:	03 46 30             	add    0x30(%esi),%eax
43ff07:	3b f8                	cmp    %eax,%edi
43ff09:	8b 46 3c             	mov    0x3c(%esi),%eax
43ff0c:	0f 44 4e 30          	cmove  0x30(%esi),%ecx
43ff10:	2b 46 34             	sub    0x34(%esi),%eax
43ff13:	89 4e 40             	mov    %ecx,0x40(%esi)
43ff16:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
43ff19:	89 46 3c             	mov    %eax,0x3c(%esi)
43ff1c:	eb 02                	jmp    0x43ff20
43ff1e:	33 c9                	xor    %ecx,%ecx
43ff20:	8b 06                	mov    (%esi),%eax
43ff22:	ff 76 1c             	push   0x1c(%esi)
43ff25:	51                   	push   %ecx
43ff26:	8b b8 d0 00 00 00    	mov    0xd0(%eax),%edi
43ff2c:	8b cf                	mov    %edi,%ecx
43ff2e:	ff 15 d4 e2 49 00    	call   *0x49e2d4
43ff34:	8b ce                	mov    %esi,%ecx
43ff36:	ff d7                	call   *%edi
43ff38:	8b 56 1c             	mov    0x1c(%esi),%edx
43ff3b:	2b da                	sub    %edx,%ebx
43ff3d:	89 55 ac             	mov    %edx,-0x54(%ebp)
43ff40:	eb 03                	jmp    0x43ff45
43ff42:	8b 55 ac             	mov    -0x54(%ebp),%edx
43ff45:	8b 7e 20             	mov    0x20(%esi),%edi
43ff48:	8d 04 3a             	lea    (%edx,%edi,1),%eax
43ff4b:	3b d8                	cmp    %eax,%ebx
43ff4d:	72 4f                	jb     0x43ff9e
43ff4f:	8b cb                	mov    %ebx,%ecx
43ff51:	2b cf                	sub    %edi,%ecx
43ff53:	85 d2                	test   %edx,%edx
43ff55:	74 0d                	je     0x43ff64
43ff57:	8d 42 ff             	lea    -0x1(%edx),%eax
43ff5a:	85 d0                	test   %edx,%eax
43ff5c:	75 06                	jne    0x43ff64
43ff5e:	23 c1                	and    %ecx,%eax
43ff60:	2b c8                	sub    %eax,%ecx
43ff62:	eb 09                	jmp    0x43ff6d
43ff64:	8b c1                	mov    %ecx,%eax
43ff66:	33 d2                	xor    %edx,%edx
43ff68:	f7 75 ac             	divl   -0x54(%ebp)
43ff6b:	2b ca                	sub    %edx,%ecx
43ff6d:	80 7d 18 00          	cmpb   $0x0,0x18(%ebp)
43ff71:	8b 3e                	mov    (%esi),%edi
43ff73:	51                   	push   %ecx
43ff74:	ff 75 a8             	push   -0x58(%ebp)
43ff77:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
43ff7a:	74 08                	je     0x43ff84
43ff7c:	8b bf d0 00 00 00    	mov    0xd0(%edi),%edi
43ff82:	eb 06                	jmp    0x43ff8a
43ff84:	8b bf cc 00 00 00    	mov    0xcc(%edi),%edi
43ff8a:	8b cf                	mov    %edi,%ecx
43ff8c:	ff 15 d4 e2 49 00    	call   *0x49e2d4
43ff92:	8b ce                	mov    %esi,%ecx
43ff94:	ff d7                	call   *%edi
43ff96:	8b 45 a4             	mov    -0x5c(%ebp),%eax
43ff99:	01 45 a8             	add    %eax,-0x58(%ebp)
43ff9c:	2b d8                	sub    %eax,%ebx
43ff9e:	8b 45 a8             	mov    -0x58(%ebp),%eax
43ffa1:	2b 5e 3c             	sub    0x3c(%esi),%ebx
43ffa4:	8d 4e 28             	lea    0x28(%esi),%ecx
43ffa7:	53                   	push   %ebx
43ffa8:	50                   	push   %eax