420aad:	56                   	push   %esi
420aae:	6a 01                	push   $0x1
420ab0:	be 17 04 00 c0       	mov    $0xc0000417,%esi
420ab5:	56                   	push   %esi
420ab6:	6a 02                	push   $0x2
420ab8:	e8 b6 fd ff ff       	call   0x420873
420abd:	83 c4 0c             	add    $0xc,%esp
420ac0:	56                   	push   %esi
420ac1:	ff 15 e0 f0 43 00    	call   *0x43f0e0
420ac7:	50                   	push   %eax
420ac8:	ff 15 08 f1 43 00    	call   *0x43f108
420ace:	5e                   	pop    %esi
420acf:	c3                   	ret
420ad0:	8b ff                	mov    %edi,%edi
420ad2:	55                   	push   %ebp
420ad3:	8b ec                	mov    %esp,%ebp
420ad5:	5d                   	pop    %ebp
420ad6:	e9 3f b9 00 00       	jmp    0x42c41a
420adb:	8b ff                	mov    %edi,%edi
420add:	55                   	push   %ebp
420ade:	8b ec                	mov    %esp,%ebp
420ae0:	51                   	push   %ecx
420ae1:	51                   	push   %ecx
420ae2:	8b 55 1c             	mov    0x1c(%ebp),%edx
420ae5:	53                   	push   %ebx
420ae6:	56                   	push   %esi
420ae7:	8b 75 20             	mov    0x20(%ebp),%esi
420aea:	85 d2                	test   %edx,%edx
420aec:	75 23                	jne    0x420b11
420aee:	56                   	push   %esi
420aef:	33 db                	xor    %ebx,%ebx
420af1:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
420af5:	53                   	push   %ebx
420af6:	53                   	push   %ebx
420af7:	53                   	push   %ebx
420af8:	53                   	push   %ebx
420af9:	53                   	push   %ebx
420afa:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
420b01:	e8 ec fe ff ff       	call   0x4209f2
420b06:	83 c4 18             	add    $0x18,%esp
420b09:	83 c8 ff             	or     $0xffffffff,%eax
420b0c:	e9 c7 00 00 00       	jmp    0x420bd8
420b11:	8b 45 18             	mov    0x18(%ebp),%eax
420b14:	57                   	push   %edi
420b15:	8b 7d 10             	mov    0x10(%ebp),%edi
420b18:	85 c0                	test   %eax,%eax
420b1a:	75 12                	jne    0x420b2e
420b1c:	85 ff                	test   %edi,%edi
420b1e:	75 16                	jne    0x420b36
420b20:	39 7d 14             	cmp    %edi,0x14(%ebp)
420b23:	0f 85 90 00 00 00    	jne    0x420bb9
420b29:	e9 a9 00 00 00       	jmp    0x420bd7
420b2e:	85 ff                	test   %edi,%edi
420b30:	0f 84 83 00 00 00    	je     0x420bb9
420b36:	8b 4d 14             	mov    0x14(%ebp),%ecx
420b39:	85 c9                	test   %ecx,%ecx
420b3b:	74 7c                	je     0x420bb9
420b3d:	8b 5e 18             	mov    0x18(%esi),%ebx
420b40:	ff 75 24             	push   0x24(%ebp)
420b43:	89 5d fc             	mov    %ebx,-0x4(%ebp)
420b46:	8b 5e 1c             	mov    0x1c(%esi),%ebx
420b49:	89 5d f8             	mov    %ebx,-0x8(%ebp)
420b4c:	33 db                	xor    %ebx,%ebx
420b4e:	56                   	push   %esi
420b4f:	52                   	push   %edx
420b50:	3b c8                	cmp    %eax,%ecx
420b52:	76 2a                	jbe    0x420b7e
420b54:	40                   	inc    %eax
420b55:	50                   	push   %eax
420b56:	57                   	push   %edi
420b57:	ff 75 0c             	push   0xc(%ebp)
420b5a:	ff 75 08             	push   0x8(%ebp)
420b5d:	e8 8c 01 00 00       	call   0x420cee
420b62:	83 c4 1c             	add    $0x1c,%esp
420b65:	83 f8 fe             	cmp    $0xfffffffe,%eax
420b68:	74 36                	je     0x420ba0
420b6a:	85 c0                	test   %eax,%eax
420b6c:	79 69                	jns    0x420bd7
420b6e:	88 1f                	mov    %bl,(%edi)
420b70:	83 f8 fe             	cmp    $0xfffffffe,%eax
420b73:	75 5f                	jne    0x420bd4
420b75:	c7 46 18 22 00 00 00 	movl   $0x22,0x18(%esi)
420b7c:	eb 44                	jmp    0x420bc2
420b7e:	51                   	push   %ecx
420b7f:	57                   	push   %edi
420b80:	ff 75 0c             	push   0xc(%ebp)
420b83:	ff 75 08             	push   0x8(%ebp)
420b86:	e8 63 01 00 00       	call   0x420cee
420b8b:	8b 4d 14             	mov    0x14(%ebp),%ecx
420b8e:	83 c4 1c             	add    $0x1c,%esp
420b91:	88 5c 0f ff          	mov    %bl,-0x1(%edi,%ecx,1)
420b95:	83 f8 fe             	cmp    $0xfffffffe,%eax
420b98:	75 d0                	jne    0x420b6a
420b9a:	83 7d 18 ff          	cmpl   $0xffffffff,0x18(%ebp)
420b9e:	75 ce                	jne    0x420b6e
420ba0:	38 5e 1c             	cmp    %bl,0x1c(%esi)
420ba3:	74 2f                	je     0x420bd4
420ba5:	83 7e 18 22          	cmpl   $0x22,0x18(%esi)
420ba9:	75 29                	jne    0x420bd4
420bab:	8b 45 fc             	mov    -0x4(%ebp),%eax
420bae:	89 46 18             	mov    %eax,0x18(%esi)
420bb1:	8b 45 f8             	mov    -0x8(%ebp),%eax
420bb4:	89 46 1c             	mov    %eax,0x1c(%esi)
420bb7:	eb 1b                	jmp    0x420bd4
420bb9:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
420bc0:	33 db                	xor    %ebx,%ebx
420bc2:	56                   	push   %esi
420bc3:	53                   	push   %ebx
420bc4:	53                   	push   %ebx
420bc5:	53                   	push   %ebx
420bc6:	53                   	push   %ebx
420bc7:	53                   	push   %ebx
420bc8:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
420bcc:	e8 21 fe ff ff       	call   0x4209f2
420bd1:	83 c4 18             	add    $0x18,%esp
420bd4:	83 c8 ff             	or     $0xffffffff,%eax
420bd7:	5f                   	pop    %edi
420bd8:	5e                   	pop    %esi
420bd9:	5b                   	pop    %ebx
420bda:	c9                   	leave
420bdb:	c3                   	ret
420bdc:	8b ff                	mov    %edi,%edi
420bde:	55                   	push   %ebp
420bdf:	8b ec                	mov    %esp,%ebp
420be1:	51                   	push   %ecx
420be2:	51                   	push   %ecx
420be3:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
420be6:	56                   	push   %esi
420be7:	8b 75 20             	mov    0x20(%ebp),%esi
420bea:	85 c9                	test   %ecx,%ecx
420bec:	75 23                	jne    0x420c11
420bee:	33 c0                	xor    %eax,%eax
420bf0:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
420bf4:	56                   	push   %esi
420bf5:	50                   	push   %eax
420bf6:	50                   	push   %eax
420bf7:	50                   	push   %eax
420bf8:	50                   	push   %eax
420bf9:	50                   	push   %eax
420bfa:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
420c01:	e8 ec fd ff ff       	call   0x4209f2
420c06:	83 c4 18             	add    $0x18,%esp
420c09:	83 c8 ff             	or     $0xffffffff,%eax
420c0c:	e9 da 00 00 00       	jmp    0x420ceb
420c11:	53                   	push   %ebx
420c12:	8b 5d 18             	mov    0x18(%ebp),%ebx
420c15:	57                   	push   %edi
420c16:	8b 7d 10             	mov    0x10(%ebp),%edi
420c19:	85 db                	test   %ebx,%ebx
420c1b:	75 14                	jne    0x420c31
420c1d:	85 ff                	test   %edi,%edi
420c1f:	75 18                	jne    0x420c39
420c21:	39 7d 14             	cmp    %edi,0x14(%ebp)
420c24:	0f 85 a1 00 00 00    	jne    0x420ccb
420c2a:	33 c0                	xor    %eax,%eax
420c2c:	e9 b8 00 00 00       	jmp    0x420ce9
420c31:	85 ff                	test   %edi,%edi
420c33:	0f 84 92 00 00 00    	je     0x420ccb
420c39:	8b 45 14             	mov    0x14(%ebp),%eax
420c3c:	85 c0                	test   %eax,%eax
420c3e:	0f 84 87 00 00 00    	je     0x420ccb
420c44:	8b 56 18             	mov    0x18(%esi),%edx
420c47:	89 55 fc             	mov    %edx,-0x4(%ebp)
420c4a:	8b 56 1c             	mov    0x1c(%esi),%edx
420c4d:	89 55 f8             	mov    %edx,-0x8(%ebp)
420c50:	ff 75 24             	push   0x24(%ebp)
420c53:	56                   	push   %esi
420c54:	51                   	push   %ecx
420c55:	3b c3                	cmp    %ebx,%eax
420c57:	76 1e                	jbe    0x420c77
420c59:	8d 43 01             	lea    0x1(%ebx),%eax
420c5c:	50                   	push   %eax
420c5d:	57                   	push   %edi
420c5e:	ff 75 0c             	push   0xc(%ebp)
420c61:	ff 75 08             	push   0x8(%ebp)
420c64:	e8 f9 01 00 00       	call   0x420e62
420c69:	83 c4 1c             	add    $0x1c,%esp
420c6c:	83 f8 fe             	cmp    $0xfffffffe,%eax
420c6f:	75 43                	jne    0x420cb4
420c71:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
420c75:	eb 27                	jmp    0x420c9e
420c77:	50                   	push   %eax
420c78:	57                   	push   %edi
420c79:	ff 75 0c             	push   0xc(%ebp)
420c7c:	ff 75 08             	push   0x8(%ebp)
420c7f:	e8 de 01 00 00       	call   0x420e62
420c84:	8b 4d 14             	mov    0x14(%ebp),%ecx
420c87:	33 d2                	xor    %edx,%edx
420c89:	83 c4 1c             	add    $0x1c,%esp
420c8c:	66 89 54 4f fe       	mov    %dx,-0x2(%edi,%ecx,2)
420c91:	83 f8 fe             	cmp    $0xfffffffe,%eax
420c94:	75 1e                	jne    0x420cb4
420c96:	83 fb ff             	cmp    $0xffffffff,%ebx
420c99:	75 1d                	jne    0x420cb8
420c9b:	38 56 1c             	cmp    %dl,0x1c(%esi)
420c9e:	74 46                	je     0x420ce6
420ca0:	83 7e 18 22          	cmpl   $0x22,0x18(%esi)
420ca4:	75 40                	jne    0x420ce6
420ca6:	8b 45 fc             	mov    -0x4(%ebp),%eax
420ca9:	89 46 18             	mov    %eax,0x18(%esi)
420cac:	8b 45 f8             	mov    -0x8(%ebp),%eax
420caf:	89 46 1c             	mov    %eax,0x1c(%esi)
420cb2:	eb 32                	jmp    0x420ce6
420cb4:	85 c0                	test   %eax,%eax
420cb6:	79 31                	jns    0x420ce9
420cb8:	33 c9                	xor    %ecx,%ecx
420cba:	66 89 0f             	mov    %cx,(%edi)
420cbd:	83 f8 fe             	cmp    $0xfffffffe,%eax
420cc0:	75 24                	jne    0x420ce6
420cc2:	c7 46 18 22 00 00 00 	movl   $0x22,0x18(%esi)
420cc9:	eb 07                	jmp    0x420cd2
420ccb:	c7 46 18 16 00 00 00 	movl   $0x16,0x18(%esi)
420cd2:	33 c0                	xor    %eax,%eax
420cd4:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
420cd8:	56                   	push   %esi
420cd9:	50                   	push   %eax
420cda:	50                   	push   %eax
420cdb:	50                   	push   %eax
420cdc:	50                   	push   %eax
420cdd:	50                   	push   %eax
420cde:	e8 0f fd ff ff       	call   0x4209f2
420ce3:	83 c4 18             	add    $0x18,%esp
420ce6:	83 c8 ff             	or     $0xffffffff,%eax
420ce9:	5f                   	pop    %edi
420cea:	5b                   	pop    %ebx
420ceb:	5e                   	pop    %esi
420cec:	c9                   	leave
420ced:	c3                   	ret
420cee:	8b ff                	mov    %edi,%edi
420cf0:	55                   	push   %ebp
420cf1:	8b ec                	mov    %esp,%ebp
420cf3:	81 ec 74 04 00 00    	sub    $0x474,%esp
420cf9:	a1 14 40 45 00       	mov    0x454014,%eax
420cfe:	33 c5                	xor    %ebp,%eax
420d00:	89 45 fc             	mov    %eax,-0x4(%ebp)
420d03:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
420d07:	8b 45 10             	mov    0x10(%ebp),%eax
420d0a:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
420d0d:	53                   	push   %ebx
420d0e:	56                   	push   %esi
420d0f:	8b 75 14             	mov    0x14(%ebp),%esi
420d12:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
420d18:	75 23                	jne    0x420d3d
420d1a:	51                   	push   %ecx
420d1b:	33 db                	xor    %ebx,%ebx
420d1d:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
420d21:	53                   	push   %ebx
420d22:	53                   	push   %ebx
420d23:	53                   	push   %ebx
420d24:	53                   	push   %ebx
420d25:	53                   	push   %ebx
420d26:	c7 41 18 16 00 00 00 	movl   $0x16,0x18(%ecx)
420d2d:	e8 c0 fc ff ff       	call   0x4209f2
420d32:	83 c4 18             	add    $0x18,%esp
420d35:	83 c8 ff             	or     $0xffffffff,%eax
420d38:	e9 17 01 00 00       	jmp    0x420e54
420d3d:	85 f6                	test   %esi,%esi
420d3f:	74 04                	je     0x420d45
420d41:	85 c0                	test   %eax,%eax
420d43:	74 d5                	je     0x420d1a
420d45:	8b 55 08             	mov    0x8(%ebp),%edx
420d48:	33 c0                	xor    %eax,%eax
420d4a:	57                   	push   %edi
420d4b:	8d bd 90 fb ff ff    	lea    -0x470(%ebp),%edi
420d51:	33 db                	xor    %ebx,%ebx
420d53:	ab                   	stos   %eax,%es:(%edi)
420d54:	ab                   	stos   %eax,%es:(%edi)
420d55:	ab                   	stos   %eax,%es:(%edi)
420d56:	ab                   	stos   %eax,%es:(%edi)
420d57:	8b c2                	mov    %edx,%eax
420d59:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
420d5f:	83 e0 02             	and    $0x2,%eax
420d62:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
420d68:	0b c3                	or     %ebx,%eax
420d6a:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
420d70:	89 b5 94 fb ff ff    	mov    %esi,-0x46c(%ebp)
420d76:	89 9d 98 fb ff ff    	mov    %ebx,-0x468(%ebp)
420d7c:	75 0a                	jne    0x420d88
420d7e:	88 9d 9c fb ff ff    	mov    %bl,-0x464(%ebp)
420d84:	85 ff                	test   %edi,%edi
420d86:	75 07                	jne    0x420d8f
420d88:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
420d8f:	ff 75 20             	push   0x20(%ebp)
420d92:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
420d98:	51                   	push   %ecx
420d99:	ff 75 18             	push   0x18(%ebp)
420d9c:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
420da2:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
420da8:	ff 75 0c             	push   0xc(%ebp)
420dab:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
420db1:	52                   	push   %edx
420db2:	50                   	push   %eax
420db3:	e8 48 1d 00 00       	call   0x422b00
420db8:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
420dbe:	89 5d f4             	mov    %ebx,-0xc(%ebp)
420dc1:	e8 72 20 00 00       	call   0x422e38
420dc6:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
420dcc:	85 ff                	test   %edi,%edi
420dce:	74 70                	je     0x420e40
420dd0:	8b 4d 08             	mov    0x8(%ebp),%ecx
420dd3:	83 e1 01             	and    $0x1,%ecx
420dd6:	0b cb                	or     %ebx,%ecx
420dd8:	74 21                	je     0x420dfb
420dda:	85 f6                	test   %esi,%esi
420ddc:	75 04                	jne    0x420de2
420dde:	85 c0                	test   %eax,%eax
420de0:	75 43                	jne    0x420e25
420de2:	8b 8d 98 fb ff ff    	mov    -0x468(%ebp),%ecx
420de8:	3b ce                	cmp    %esi,%ecx
420dea:	74 05                	je     0x420df1
420dec:	88 1c 0f             	mov    %bl,(%edi,%ecx,1)
420def:	eb 4f                	jmp    0x420e40
420df1:	85 c0                	test   %eax,%eax
420df3:	78 4b                	js     0x420e40
420df5:	3b c6                	cmp    %esi,%eax
420df7:	77 2c                	ja     0x420e25
420df9:	eb 45                	jmp    0x420e40
420dfb:	8b 8d 8c fb ff ff    	mov    -0x474(%ebp),%ecx
420e01:	0b cb                	or     %ebx,%ecx
420e03:	74 1c                	je     0x420e21
420e05:	85 f6                	test   %esi,%esi
420e07:	74 37                	je     0x420e40
420e09:	85 c0                	test   %eax,%eax
420e0b:	79 04                	jns    0x420e11
420e0d:	88 1f                	mov    %bl,(%edi)
420e0f:	eb 2f                	jmp    0x420e40
420e11:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
420e17:	3b c6                	cmp    %esi,%eax
420e19:	75 22                	jne    0x420e3d
420e1b:	88 5c 3e ff          	mov    %bl,-0x1(%esi,%edi,1)
420e1f:	eb 1f                	jmp    0x420e40
420e21:	85 f6                	test   %esi,%esi
420e23:	75 05                	jne    0x420e2a
420e25:	83 ce ff             	or     $0xffffffff,%esi
420e28:	eb 1c                	jmp    0x420e46
420e2a:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
420e30:	3b c6                	cmp    %esi,%eax
420e32:	75 09                	jne    0x420e3d
420e34:	6a fe                	push   $0xfffffffe
420e36:	88 5c 3e ff          	mov    %bl,-0x1(%esi,%edi,1)
420e3a:	5e                   	pop    %esi
420e3b:	eb 09                	jmp    0x420e46
420e3d:	88 1c 07             	mov    %bl,(%edi,%eax,1)
420e40:	8b b5 a0 fb ff ff    	mov    -0x460(%ebp),%esi
420e46:	8d 8d e0 fb ff ff    	lea    -0x420(%ebp),%ecx
420e4c:	e8 82 1d 00 00       	call   0x422bd3
420e51:	8b c6                	mov    %esi,%eax
420e53:	5f                   	pop    %edi
420e54:	8b 4d fc             	mov    -0x4(%ebp),%ecx
420e57:	5e                   	pop    %esi