412b73:	74 45                	je     0x412bba
412b75:	57                   	push   %edi
412b76:	ff 15 34 b0 41 00    	call   *0x41b034
412b7c:	85 c0                	test   %eax,%eax
412b7e:	74 3a                	je     0x412bba
412b80:	8d 45 fc             	lea    -0x4(%ebp),%eax
412b83:	50                   	push   %eax
412b84:	57                   	push   %edi
412b85:	ff 15 1c b0 41 00    	call   *0x41b01c
412b8b:	85 c0                	test   %eax,%eax
412b8d:	74 18                	je     0x412ba7
412b8f:	6a ff                	push   $0xffffffff
412b91:	ff 75 fc             	push   -0x4(%ebp)
412b94:	ff 75 f8             	push   -0x8(%ebp)
412b97:	53                   	push   %ebx
412b98:	ff 15 e8 b2 41 00    	call   *0x41b2e8
412b9e:	83 c4 10             	add    $0x10,%esp
412ba1:	83 f8 50             	cmp    $0x50,%eax
412ba4:	74 01                	je     0x412ba7
412ba6:	46                   	inc    %esi
412ba7:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
412bab:	74 09                	je     0x412bb6
412bad:	ff 75 fc             	push   -0x4(%ebp)
412bb0:	ff 15 78 b1 41 00    	call   *0x41b178
412bb6:	8b c6                	mov    %esi,%eax
412bb8:	eb 02                	jmp    0x412bbc
412bba:	33 c0                	xor    %eax,%eax
412bbc:	5f                   	pop    %edi
412bbd:	5e                   	pop    %esi
412bbe:	5b                   	pop    %ebx
412bbf:	c9                   	leave
412bc0:	c3                   	ret
412bc1:	85 c9                	test   %ecx,%ecx
412bc3:	74 18                	je     0x412bdd
412bc5:	56                   	push   %esi
412bc6:	8d 51 02             	lea    0x2(%ecx),%edx
412bc9:	33 f6                	xor    %esi,%esi
412bcb:	66 8b 01             	mov    (%ecx),%ax
412bce:	83 c1 02             	add    $0x2,%ecx
412bd1:	66 3b c6             	cmp    %si,%ax
412bd4:	75 f5                	jne    0x412bcb
412bd6:	2b ca                	sub    %edx,%ecx
412bd8:	d1 f9                	sar    $1,%ecx
412bda:	5e                   	pop    %esi
412bdb:	eb 02                	jmp    0x412bdf
412bdd:	33 c9                	xor    %ecx,%ecx
412bdf:	8b c1                	mov    %ecx,%eax
412be1:	c3                   	ret
412be2:	8b ff                	mov    %edi,%edi
412be4:	55                   	push   %ebp
412be5:	8b ec                	mov    %esp,%ebp
412be7:	b8 0c 20 00 00       	mov    $0x200c,%eax
412bec:	e8 3f 15 00 00       	call   0x414130
412bf1:	a1 18 51 41 00       	mov    0x415118,%eax
412bf6:	33 c5                	xor    %ebp,%eax
412bf8:	89 45 fc             	mov    %eax,-0x4(%ebp)
412bfb:	8b 45 08             	mov    0x8(%ebp),%eax
412bfe:	53                   	push   %ebx
412bff:	89 85 f4 df ff ff    	mov    %eax,-0x200c(%ebp)
412c05:	8b d9                	mov    %ecx,%ebx
412c07:	8b 45 14             	mov    0x14(%ebp),%eax
412c0a:	56                   	push   %esi
412c0b:	8b 75 24             	mov    0x24(%ebp),%esi
412c0e:	89 85 f8 df ff ff    	mov    %eax,-0x2008(%ebp)
412c14:	8b 45 20             	mov    0x20(%ebp),%eax
412c17:	57                   	push   %edi
412c18:	8b fa                	mov    %edx,%edi
412c1a:	85 c0                	test   %eax,%eax
412c1c:	75 09                	jne    0x412c27
412c1e:	66 89 85 fc ef ff ff 	mov    %ax,-0x1004(%ebp)
412c25:	eb 5a                	jmp    0x412c81
412c27:	50                   	push   %eax
412c28:	68 bc 42 40 00       	push   $0x4042bc
412c2d:	68 00 08 00 00       	push   $0x800
412c32:	85 f6                	test   %esi,%esi
412c34:	75 11                	jne    0x412c47
412c36:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
412c3c:	50                   	push   %eax
412c3d:	e8 41 2c ff ff       	call   0x405883
412c42:	83 c4 10             	add    $0x10,%esp
412c45:	eb 3a                	jmp    0x412c81
412c47:	8d 85 fc df ff ff    	lea    -0x2004(%ebp),%eax
412c4d:	50                   	push   %eax
412c4e:	e8 30 2c ff ff       	call   0x405883
412c53:	56                   	push   %esi
412c54:	8d 85 fc df ff ff    	lea    -0x2004(%ebp),%eax
412c5a:	be ff 07 00 00       	mov    $0x7ff,%esi
412c5f:	50                   	push   %eax
412c60:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
412c66:	56                   	push   %esi
412c67:	50                   	push   %eax
412c68:	ff 15 c8 b2 41 00    	call   *0x41b2c8
412c6e:	83 c4 20             	add    $0x20,%esp
412c71:	85 c0                	test   %eax,%eax
412c73:	78 06                	js     0x412c7b
412c75:	3b c6                	cmp    %esi,%eax
412c77:	77 02                	ja     0x412c7b
412c79:	75 06                	jne    0x412c81
412c7b:	33 c0                	xor    %eax,%eax
412c7d:	66 89 45 fa          	mov    %ax,-0x6(%ebp)
412c81:	51                   	push   %ecx
412c82:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
412c88:	8b d7                	mov    %edi,%edx
412c8a:	50                   	push   %eax
412c8b:	ff 75 1c             	push   0x1c(%ebp)
412c8e:	8b cb                	mov    %ebx,%ecx
412c90:	6a 02                	push   $0x2
412c92:	ff b5 f8 df ff ff    	push   -0x2008(%ebp)
412c98:	6a 00                	push   $0x0
412c9a:	6a 00                	push   $0x0
412c9c:	ff b5 f4 df ff ff    	push   -0x200c(%ebp)
412ca2:	e8 05 39 ff ff       	call   0x4065ac
412ca7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
412caa:	5f                   	pop    %edi
412cab:	5e                   	pop    %esi
412cac:	33 cd                	xor    %ebp,%ecx
412cae:	5b                   	pop    %ebx
412caf:	e8 2c 0c 00 00       	call   0x4138e0
412cb4:	c9                   	leave
412cb5:	c2 20 00             	ret    $0x20
412cb8:	8b ff                	mov    %edi,%edi
412cba:	55                   	push   %ebp
412cbb:	8b ec                	mov    %esp,%ebp
412cbd:	5d                   	pop    %ebp
412cbe:	e9 1f ff ff ff       	jmp    0x412be2
412cc3:	8b ff                	mov    %edi,%edi
412cc5:	55                   	push   %ebp
412cc6:	8b ec                	mov    %esp,%ebp
412cc8:	8b 55 0c             	mov    0xc(%ebp),%edx
412ccb:	8d 45 1c             	lea    0x1c(%ebp),%eax
412cce:	50                   	push   %eax
412ccf:	ff 75 18             	push   0x18(%ebp)
412cd2:	ff 75 14             	push   0x14(%ebp)
412cd5:	51                   	push   %ecx
412cd6:	ff 75 04             	push   0x4(%ebp)
412cd9:	51                   	push   %ecx
412cda:	51                   	push   %ecx
412cdb:	ff 75 10             	push   0x10(%ebp)
412cde:	8b 4d 08             	mov    0x8(%ebp),%ecx
412ce1:	e8 d2 ff ff ff       	call   0x412cb8
412ce6:	8b 45 14             	mov    0x14(%ebp),%eax
412ce9:	5d                   	pop    %ebp
412cea:	c3                   	ret
412ceb:	8b ff                	mov    %edi,%edi
412ced:	55                   	push   %ebp
412cee:	8b ec                	mov    %esp,%ebp
412cf0:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
412cf4:	7d 1e                	jge    0x412d14
412cf6:	8b 55 0c             	mov    0xc(%ebp),%edx
412cf9:	8d 45 1c             	lea    0x1c(%ebp),%eax
412cfc:	50                   	push   %eax
412cfd:	ff 75 18             	push   0x18(%ebp)
412d00:	ff 75 14             	push   0x14(%ebp)
412d03:	51                   	push   %ecx
412d04:	ff 75 04             	push   0x4(%ebp)
412d07:	51                   	push   %ecx
412d08:	51                   	push   %ecx
412d09:	ff 75 10             	push   0x10(%ebp)
412d0c:	8b 4d 08             	mov    0x8(%ebp),%ecx
412d0f:	e8 a4 ff ff ff       	call   0x412cb8
412d14:	8b 45 14             	mov    0x14(%ebp),%eax
412d17:	5d                   	pop    %ebp
412d18:	c3                   	ret
412d19:	8b ff                	mov    %edi,%edi
412d1b:	55                   	push   %ebp
412d1c:	8b ec                	mov    %esp,%ebp
412d1e:	51                   	push   %ecx
412d1f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
412d23:	8d 45 fc             	lea    -0x4(%ebp),%eax
412d26:	53                   	push   %ebx
412d27:	57                   	push   %edi
412d28:	50                   	push   %eax
412d29:	bf 44 3b 40 00       	mov    $0x403b44,%edi
412d2e:	57                   	push   %edi
412d2f:	68 38 45 40 00       	push   $0x404538
412d34:	ff 15 00 d0 41 00    	call   *0x41d000
412d3a:	57                   	push   %edi
412d3b:	bb c4 26 40 00       	mov    $0x4026c4,%ebx
412d40:	53                   	push   %ebx
412d41:	50                   	push   %eax
412d42:	68 d8 44 40 00       	push   $0x4044d8
412d47:	6a 0c                	push   $0xc
412d49:	ff 75 04             	push   0x4(%ebp)
412d4c:	e8 9a ff ff ff       	call   0x412ceb
412d51:	83 c4 18             	add    $0x18,%esp
412d54:	85 c0                	test   %eax,%eax
412d56:	78 09                	js     0x412d61
412d58:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
412d5c:	0f 95 c0             	setne  %al
412d5f:	eb 64                	jmp    0x412dc5
412d61:	b8 00 18 40 00       	mov    $0x401800,%eax
412d66:	56                   	push   %esi
412d67:	8b 08                	mov    (%eax),%ecx
412d69:	8b d7                	mov    %edi,%edx
412d6b:	66 8b 31             	mov    (%ecx),%si
412d6e:	66 3b 32             	cmp    (%edx),%si
412d71:	75 1e                	jne    0x412d91
412d73:	66 85 f6             	test   %si,%si
412d76:	74 15                	je     0x412d8d
412d78:	66 8b 71 02          	mov    0x2(%ecx),%si
412d7c:	66 3b 72 02          	cmp    0x2(%edx),%si
412d80:	75 0f                	jne    0x412d91
412d82:	83 c1 04             	add    $0x4,%ecx
412d85:	83 c2 04             	add    $0x4,%edx
412d88:	66 85 f6             	test   %si,%si
412d8b:	75 de                	jne    0x412d6b
412d8d:	33 c9                	xor    %ecx,%ecx
412d8f:	eb 05                	jmp    0x412d96
412d91:	1b c9                	sbb    %ecx,%ecx
412d93:	83 c9 01             	or     $0x1,%ecx
412d96:	85 c9                	test   %ecx,%ecx
412d98:	74 27                	je     0x412dc1
412d9a:	83 c0 08             	add    $0x8,%eax
412d9d:	3d 48 18 40 00       	cmp    $0x401848,%eax
412da2:	75 c3                	jne    0x412d67
412da4:	57                   	push   %edi
412da5:	53                   	push   %ebx
412da6:	68 ff ff 00 80       	push   $0x8000ffff
412dab:	68 d8 44 40 00       	push   $0x4044d8
412db0:	6a 2c                	push   $0x2c
412db2:	ff 75 04             	push   0x4(%ebp)
412db5:	e8 09 ff ff ff       	call   0x412cc3
412dba:	83 c4 18             	add    $0x18,%esp
412dbd:	32 c0                	xor    %al,%al
412dbf:	eb 03                	jmp    0x412dc4
412dc1:	8a 40 04             	mov    0x4(%eax),%al
412dc4:	5e                   	pop    %esi
412dc5:	5f                   	pop    %edi
412dc6:	5b                   	pop    %ebx
412dc7:	c9                   	leave
412dc8:	c3                   	ret
412dc9:	8b ff                	mov    %edi,%edi
412dcb:	55                   	push   %ebp
412dcc:	8b ec                	mov    %esp,%ebp
412dce:	8b 0d 40 50 41 00    	mov    0x415040,%ecx
412dd4:	85 c9                	test   %ecx,%ecx
412dd6:	74 1a                	je     0x412df2
412dd8:	8b 01                	mov    (%ecx),%eax
412dda:	56                   	push   %esi
412ddb:	ff 75 0c             	push   0xc(%ebp)
412dde:	ff 75 08             	push   0x8(%ebp)
412de1:	8b 70 0c             	mov    0xc(%eax),%esi
412de4:	51                   	push   %ecx
412de5:	8b ce                	mov    %esi,%ecx
412de7:	ff 15 90 b3 41 00    	call   *0x41b390
412ded:	ff d6                	call   *%esi
412def:	5e                   	pop    %esi
412df0:	eb 05                	jmp    0x412df7
412df2:	b8 05 40 00 80       	mov    $0x80004005,%eax
412df7:	5d                   	pop    %ebp
412df8:	c2 08 00             	ret    $0x8
412dfb:	8b ff                	mov    %edi,%edi
412dfd:	55                   	push   %ebp
412dfe:	8b ec                	mov    %esp,%ebp
412e00:	8b 0d 40 50 41 00    	mov    0x415040,%ecx
412e06:	85 c9                	test   %ecx,%ecx
412e08:	74 1a                	je     0x412e24
412e0a:	8b 01                	mov    (%ecx),%eax
412e0c:	56                   	push   %esi
412e0d:	ff 75 0c             	push   0xc(%ebp)
412e10:	ff 75 08             	push   0x8(%ebp)
412e13:	8b 70 24             	mov    0x24(%eax),%esi
412e16:	51                   	push   %ecx
412e17:	8b ce                	mov    %esi,%ecx
412e19:	ff 15 90 b3 41 00    	call   *0x41b390
412e1f:	ff d6                	call   *%esi
412e21:	5e                   	pop    %esi
412e22:	eb 05                	jmp    0x412e29
412e24:	b8 05 40 00 80       	mov    $0x80004005,%eax
412e29:	5d                   	pop    %ebp
412e2a:	c2 08 00             	ret    $0x8
412e2d:	8b ff                	mov    %edi,%edi
412e2f:	55                   	push   %ebp
412e30:	8b ec                	mov    %esp,%ebp
412e32:	8b 0d 40 50 41 00    	mov    0x415040,%ecx
412e38:	85 c9                	test   %ecx,%ecx
412e3a:	74 17                	je     0x412e53
412e3c:	8b 01                	mov    (%ecx),%eax
412e3e:	56                   	push   %esi
412e3f:	ff 75 08             	push   0x8(%ebp)
412e42:	8b 70 28             	mov    0x28(%eax),%esi
412e45:	51                   	push   %ecx
412e46:	8b ce                	mov    %esi,%ecx
412e48:	ff 15 90 b3 41 00    	call   *0x41b390
412e4e:	ff d6                	call   *%esi
412e50:	5e                   	pop    %esi
412e51:	eb 05                	jmp    0x412e58
412e53:	b8 05 40 00 80       	mov    $0x80004005,%eax
412e58:	5d                   	pop    %ebp
412e59:	c2 04 00             	ret    $0x4
412e5c:	8b ff                	mov    %edi,%edi
412e5e:	55                   	push   %ebp
412e5f:	8b ec                	mov    %esp,%ebp
412e61:	8b 0d 40 50 41 00    	mov    0x415040,%ecx
412e67:	85 c9                	test   %ecx,%ecx
412e69:	74 1a                	je     0x412e85
412e6b:	8b 01                	mov    (%ecx),%eax
412e6d:	56                   	push   %esi
412e6e:	ff 75 0c             	push   0xc(%ebp)
412e71:	ff 75 08             	push   0x8(%ebp)
412e74:	8b 70 30             	mov    0x30(%eax),%esi
412e77:	51                   	push   %ecx
412e78:	8b ce                	mov    %esi,%ecx
412e7a:	ff 15 90 b3 41 00    	call   *0x41b390
412e80:	ff d6                	call   *%esi
412e82:	5e                   	pop    %esi
412e83:	eb 05                	jmp    0x412e8a
412e85:	b8 05 40 00 80       	mov    $0x80004005,%eax
412e8a:	5d                   	pop    %ebp
412e8b:	c2 08 00             	ret    $0x8
412e8e:	8b ff                	mov    %edi,%edi
412e90:	55                   	push   %ebp
412e91:	8b ec                	mov    %esp,%ebp
412e93:	a1 48 50 41 00       	mov    0x415048,%eax
412e98:	85 c0                	test   %eax,%eax
412e9a:	74 1e                	je     0x412eba
412e9c:	56                   	push   %esi
412e9d:	8b 30                	mov    (%eax),%esi
412e9f:	68 04 01 00 00       	push   $0x104
412ea4:	ff 75 0c             	push   0xc(%ebp)
412ea7:	ff 75 08             	push   0x8(%ebp)
412eaa:	8b 4e 0c             	mov    0xc(%esi),%ecx
412ead:	50                   	push   %eax
412eae:	ff 15 90 b3 41 00    	call   *0x41b390
412eb4:	ff 56 0c             	call   *0xc(%esi)
412eb7:	5e                   	pop    %esi
412eb8:	eb 05                	jmp    0x412ebf
412eba:	b8 05 40 00 80       	mov    $0x80004005,%eax
412ebf:	5d                   	pop    %ebp
412ec0:	c2 0c 00             	ret    $0xc
412ec3:	8b ff                	mov    %edi,%edi
412ec5:	55                   	push   %ebp
412ec6:	8b ec                	mov    %esp,%ebp
412ec8:	a1 48 50 41 00       	mov    0x415048,%eax
412ecd:	85 c0                	test   %eax,%eax
412ecf:	74 1b                	je     0x412eec
412ed1:	56                   	push   %esi
412ed2:	ff 75 10             	push   0x10(%ebp)
412ed5:	8b 30                	mov    (%eax),%esi
412ed7:	6a 00                	push   $0x0
412ed9:	ff 75 08             	push   0x8(%ebp)
412edc:	8b 4e 14             	mov    0x14(%esi),%ecx
412edf:	50                   	push   %eax
412ee0:	ff 15 90 b3 41 00    	call   *0x41b390
412ee6:	ff 56 14             	call   *0x14(%esi)
412ee9:	5e                   	pop    %esi
412eea:	eb 05                	jmp    0x412ef1
412eec:	b8 05 40 00 80       	mov    $0x80004005,%eax
412ef1:	5d                   	pop    %ebp
412ef2:	c2 0c 00             	ret    $0xc