431bf1:	8b cb                	mov    %ebx,%ecx
431bf3:	ff 15 5c e2 43 00    	call   *0x43e25c
431bf9:	ff d3                	call   *%ebx
431bfb:	59                   	pop    %ecx
431bfc:	eb 2e                	jmp    0x431c2c
431bfe:	8b 75 08             	mov    0x8(%ebp),%esi
431c01:	8b 7d d8             	mov    -0x28(%ebp),%edi
431c04:	8a 5d e7             	mov    -0x19(%ebp),%bl
431c07:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
431c0a:	89 4d e0             	mov    %ecx,-0x20(%ebp)
431c0d:	8a 7d e6             	mov    -0x1a(%ebp),%bh
431c10:	84 db                	test   %bl,%bl
431c12:	74 0b                	je     0x431c1f
431c14:	6a 03                	push   $0x3
431c16:	e8 d6 4c ff ff       	call   0x4268f1
431c1b:	59                   	pop    %ecx
431c1c:	8b 4d e0             	mov    -0x20(%ebp),%ecx
431c1f:	c3                   	ret
431c20:	56                   	push   %esi
431c21:	ff 15 5c e2 43 00    	call   *0x43e25c
431c27:	8b 5d e0             	mov    -0x20(%ebp),%ebx
431c2a:	ff d3                	call   *%ebx
431c2c:	59                   	pop    %ecx
431c2d:	83 fe 08             	cmp    $0x8,%esi
431c30:	74 0a                	je     0x431c3c
431c32:	83 fe 0b             	cmp    $0xb,%esi
431c35:	74 05                	je     0x431c3c
431c37:	83 fe 04             	cmp    $0x4,%esi
431c3a:	75 16                	jne    0x431c52
431c3c:	8b 45 d0             	mov    -0x30(%ebp),%eax
431c3f:	89 47 04             	mov    %eax,0x4(%edi)
431c42:	83 fe 08             	cmp    $0x8,%esi
431c45:	75 0b                	jne    0x431c52
431c47:	e8 7d 89 ff ff       	call   0x42a5c9
431c4c:	8b 4d cc             	mov    -0x34(%ebp),%ecx
431c4f:	89 48 08             	mov    %ecx,0x8(%eax)
431c52:	33 c0                	xor    %eax,%eax
431c54:	8b 4d f0             	mov    -0x10(%ebp),%ecx
431c57:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
431c5e:	59                   	pop    %ecx
431c5f:	5f                   	pop    %edi
431c60:	5e                   	pop    %esi
431c61:	5b                   	pop    %ebx
431c62:	c9                   	leave
431c63:	c3                   	ret
431c64:	84 db                	test   %bl,%bl
431c66:	74 08                	je     0x431c70
431c68:	6a 03                	push   $0x3
431c6a:	e8 82 4c ff ff       	call   0x4268f1
431c6f:	59                   	pop    %ecx
431c70:	6a 03                	push   $0x3
431c72:	e8 72 65 ff ff       	call   0x4281e9
431c77:	cc                   	int3
431c78:	8b ff                	mov    %edi,%edi
431c7a:	55                   	push   %ebp
431c7b:	8b ec                	mov    %esp,%ebp
431c7d:	8b 45 08             	mov    0x8(%ebp),%eax
431c80:	b9 ac de 00 00       	mov    $0xdeac,%ecx
431c85:	3b c1                	cmp    %ecx,%eax
431c87:	77 46                	ja     0x431ccf
431c89:	74 26                	je     0x431cb1
431c8b:	b9 33 c4 00 00       	mov    $0xc433,%ecx
431c90:	3b c1                	cmp    %ecx,%eax
431c92:	77 21                	ja     0x431cb5
431c94:	74 1b                	je     0x431cb1
431c96:	83 e8 2a             	sub    $0x2a,%eax
431c99:	74 16                	je     0x431cb1
431c9b:	2d 02 c4 00 00       	sub    $0xc402,%eax
431ca0:	74 0f                	je     0x431cb1
431ca2:	83 e8 01             	sub    $0x1,%eax
431ca5:	74 0a                	je     0x431cb1
431ca7:	83 e8 01             	sub    $0x1,%eax
431caa:	74 05                	je     0x431cb1
431cac:	83 e8 03             	sub    $0x3,%eax
431caf:	75 52                	jne    0x431d03
431cb1:	33 c0                	xor    %eax,%eax
431cb3:	5d                   	pop    %ebp
431cb4:	c3                   	ret
431cb5:	2d 35 c4 00 00       	sub    $0xc435,%eax
431cba:	74 f5                	je     0x431cb1
431cbc:	2d 63 12 00 00       	sub    $0x1263,%eax
431cc1:	74 45                	je     0x431d08
431cc3:	2d 12 08 00 00       	sub    $0x812,%eax
431cc8:	74 e7                	je     0x431cb1
431cca:	83 e8 01             	sub    $0x1,%eax
431ccd:	eb e0                	jmp    0x431caf
431ccf:	b9 b1 de 00 00       	mov    $0xdeb1,%ecx
431cd4:	3b c1                	cmp    %ecx,%eax
431cd6:	77 13                	ja     0x431ceb
431cd8:	74 d7                	je     0x431cb1
431cda:	2d ad de 00 00       	sub    $0xdead,%eax
431cdf:	74 d0                	je     0x431cb1
431ce1:	83 e8 01             	sub    $0x1,%eax
431ce4:	74 cb                	je     0x431cb1
431ce6:	83 e8 01             	sub    $0x1,%eax
431ce9:	eb dd                	jmp    0x431cc8
431ceb:	2d b2 de 00 00       	sub    $0xdeb2,%eax
431cf0:	74 bf                	je     0x431cb1
431cf2:	83 e8 01             	sub    $0x1,%eax
431cf5:	74 ba                	je     0x431cb1
431cf7:	2d 35 1f 00 00       	sub    $0x1f35,%eax
431cfc:	74 b3                	je     0x431cb1
431cfe:	83 e8 01             	sub    $0x1,%eax
431d01:	74 05                	je     0x431d08
431d03:	8b 45 0c             	mov    0xc(%ebp),%eax
431d06:	5d                   	pop    %ebp
431d07:	c3                   	ret
431d08:	8b 45 0c             	mov    0xc(%ebp),%eax
431d0b:	83 e0 08             	and    $0x8,%eax
431d0e:	5d                   	pop    %ebp
431d0f:	c3                   	ret
431d10:	8b ff                	mov    %edi,%edi
431d12:	55                   	push   %ebp
431d13:	8b ec                	mov    %esp,%ebp
431d15:	ff 75 1c             	push   0x1c(%ebp)
431d18:	ff 75 18             	push   0x18(%ebp)
431d1b:	ff 75 14             	push   0x14(%ebp)
431d1e:	ff 75 10             	push   0x10(%ebp)
431d21:	ff 75 0c             	push   0xc(%ebp)
431d24:	ff 75 08             	push   0x8(%ebp)
431d27:	e8 4c ff ff ff       	call   0x431c78
431d2c:	59                   	pop    %ecx
431d2d:	59                   	pop    %ecx
431d2e:	50                   	push   %eax
431d2f:	ff 75 08             	push   0x8(%ebp)
431d32:	ff 15 e0 e0 43 00    	call   *0x43e0e0
431d38:	5d                   	pop    %ebp
431d39:	c3                   	ret
431d3a:	8b ff                	mov    %edi,%edi
431d3c:	55                   	push   %ebp
431d3d:	8b ec                	mov    %esp,%ebp
431d3f:	8b 45 08             	mov    0x8(%ebp),%eax
431d42:	b9 ac de 00 00       	mov    $0xdeac,%ecx
431d47:	3b c1                	cmp    %ecx,%eax
431d49:	77 3d                	ja     0x431d88
431d4b:	74 79                	je     0x431dc6
431d4d:	b9 33 c4 00 00       	mov    $0xc433,%ecx
431d52:	3b c1                	cmp    %ecx,%eax
431d54:	77 1d                	ja     0x431d73
431d56:	74 6e                	je     0x431dc6
431d58:	83 e8 2a             	sub    $0x2a,%eax
431d5b:	74 69                	je     0x431dc6
431d5d:	2d 02 c4 00 00       	sub    $0xc402,%eax
431d62:	74 62                	je     0x431dc6
431d64:	83 e8 01             	sub    $0x1,%eax
431d67:	74 5d                	je     0x431dc6
431d69:	83 e8 01             	sub    $0x1,%eax
431d6c:	74 58                	je     0x431dc6
431d6e:	83 e8 03             	sub    $0x3,%eax
431d71:	eb 47                	jmp    0x431dba
431d73:	2d 35 c4 00 00       	sub    $0xc435,%eax
431d78:	74 4c                	je     0x431dc6
431d7a:	2d 63 12 00 00       	sub    $0x1263,%eax
431d7f:	74 45                	je     0x431dc6
431d81:	2d 12 08 00 00       	sub    $0x812,%eax
431d86:	eb 2d                	jmp    0x431db5
431d88:	b9 b1 de 00 00       	mov    $0xdeb1,%ecx
431d8d:	3b c1                	cmp    %ecx,%eax
431d8f:	77 13                	ja     0x431da4
431d91:	74 33                	je     0x431dc6
431d93:	2d ad de 00 00       	sub    $0xdead,%eax
431d98:	74 2c                	je     0x431dc6
431d9a:	83 e8 01             	sub    $0x1,%eax
431d9d:	74 27                	je     0x431dc6
431d9f:	83 e8 01             	sub    $0x1,%eax
431da2:	eb 11                	jmp    0x431db5
431da4:	2d b2 de 00 00       	sub    $0xdeb2,%eax
431da9:	74 1b                	je     0x431dc6
431dab:	83 e8 01             	sub    $0x1,%eax
431dae:	74 16                	je     0x431dc6
431db0:	2d 35 1f 00 00       	sub    $0x1f35,%eax
431db5:	74 0f                	je     0x431dc6
431db7:	83 e8 01             	sub    $0x1,%eax
431dba:	74 0a                	je     0x431dc6
431dbc:	8b 45 0c             	mov    0xc(%ebp),%eax
431dbf:	25 7f ff ff ff       	and    $0xffffff7f,%eax
431dc4:	5d                   	pop    %ebp
431dc5:	c3                   	ret
431dc6:	33 c0                	xor    %eax,%eax
431dc8:	5d                   	pop    %ebp
431dc9:	c3                   	ret
431dca:	8b ff                	mov    %edi,%edi
431dcc:	55                   	push   %ebp
431dcd:	8b ec                	mov    %esp,%ebp
431dcf:	8b 55 08             	mov    0x8(%ebp),%edx
431dd2:	53                   	push   %ebx
431dd3:	56                   	push   %esi
431dd4:	57                   	push   %edi
431dd5:	81 fa e8 fd 00 00    	cmp    $0xfde8,%edx
431ddb:	74 0c                	je     0x431de9
431ddd:	81 fa e9 fd 00 00    	cmp    $0xfde9,%edx
431de3:	74 04                	je     0x431de9
431de5:	32 db                	xor    %bl,%bl
431de7:	eb 02                	jmp    0x431deb
431de9:	b3 01                	mov    $0x1,%bl
431deb:	ff 75 0c             	push   0xc(%ebp)
431dee:	52                   	push   %edx
431def:	e8 46 ff ff ff       	call   0x431d3a
431df4:	8b 7d 24             	mov    0x24(%ebp),%edi
431df7:	59                   	pop    %ecx
431df8:	59                   	pop    %ecx
431df9:	0f b6 cb             	movzbl %bl,%ecx
431dfc:	f7 d9                	neg    %ecx
431dfe:	0f b6 f3             	movzbl %bl,%esi
431e01:	1b c9                	sbb    %ecx,%ecx
431e03:	f7 d1                	not    %ecx
431e05:	23 cf                	and    %edi,%ecx
431e07:	f7 de                	neg    %esi
431e09:	1b f6                	sbb    %esi,%esi
431e0b:	f7 d6                	not    %esi
431e0d:	23 75 20             	and    0x20(%ebp),%esi
431e10:	84 db                	test   %bl,%bl
431e12:	74 07                	je     0x431e1b
431e14:	85 ff                	test   %edi,%edi
431e16:	74 03                	je     0x431e1b
431e18:	83 27 00             	andl   $0x0,(%edi)
431e1b:	51                   	push   %ecx
431e1c:	56                   	push   %esi
431e1d:	ff 75 1c             	push   0x1c(%ebp)
431e20:	ff 75 18             	push   0x18(%ebp)
431e23:	ff 75 14             	push   0x14(%ebp)
431e26:	ff 75 10             	push   0x10(%ebp)
431e29:	50                   	push   %eax
431e2a:	52                   	push   %edx
431e2b:	ff 15 ec e0 43 00    	call   *0x43e0ec
431e31:	5f                   	pop    %edi
431e32:	5e                   	pop    %esi
431e33:	5b                   	pop    %ebx
431e34:	5d                   	pop    %ebp
431e35:	c3                   	ret
431e36:	cc                   	int3
431e37:	cc                   	int3
431e38:	cc                   	int3
431e39:	cc                   	int3
431e3a:	cc                   	int3
431e3b:	cc                   	int3
431e3c:	cc                   	int3
431e3d:	cc                   	int3
431e3e:	cc                   	int3
431e3f:	cc                   	int3
431e40:	8b ff                	mov    %edi,%edi
431e42:	55                   	push   %ebp
431e43:	8b ec                	mov    %esp,%ebp
431e45:	8b 45 0c             	mov    0xc(%ebp),%eax
431e48:	3b 45 08             	cmp    0x8(%ebp),%eax
431e4b:	76 05                	jbe    0x431e52
431e4d:	83 c8 ff             	or     $0xffffffff,%eax
431e50:	5d                   	pop    %ebp
431e51:	c3                   	ret
431e52:	1b c0                	sbb    %eax,%eax
431e54:	f7 d8                	neg    %eax
431e56:	5d                   	pop    %ebp
431e57:	c3                   	ret
431e58:	8b ff                	mov    %edi,%edi
431e5a:	55                   	push   %ebp
431e5b:	8b ec                	mov    %esp,%ebp
431e5d:	83 ec 30             	sub    $0x30,%esp
431e60:	a1 14 50 45 00       	mov    0x455014,%eax
431e65:	33 c5                	xor    %ebp,%eax
431e67:	89 45 fc             	mov    %eax,-0x4(%ebp)
431e6a:	8b 45 0c             	mov    0xc(%ebp),%eax
431e6d:	89 45 d0             	mov    %eax,-0x30(%ebp)
431e70:	56                   	push   %esi
431e71:	8b 75 08             	mov    0x8(%ebp),%esi
431e74:	85 c0                	test   %eax,%eax
431e76:	75 16                	jne    0x431e8e
431e78:	e8 b3 1b ff ff       	call   0x423a30
431e7d:	6a 16                	push   $0x16
431e7f:	5e                   	pop    %esi
431e80:	89 30                	mov    %esi,(%eax)
431e82:	e8 fc da fe ff       	call   0x41f983
431e87:	8b c6                	mov    %esi,%eax
431e89:	e9 68 01 00 00       	jmp    0x431ff6
431e8e:	53                   	push   %ebx
431e8f:	33 db                	xor    %ebx,%ebx
431e91:	57                   	push   %edi
431e92:	89 18                	mov    %ebx,(%eax)
431e94:	8b fb                	mov    %ebx,%edi
431e96:	8b 06                	mov    (%esi),%eax
431e98:	8b d3                	mov    %ebx,%edx
431e9a:	89 5d d8             	mov    %ebx,-0x28(%ebp)
431e9d:	89 7d dc             	mov    %edi,-0x24(%ebp)
431ea0:	89 55 e0             	mov    %edx,-0x20(%ebp)
431ea3:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
431ea6:	85 c0                	test   %eax,%eax
431ea8:	74 5e                	je     0x431f08
431eaa:	6a 2a                	push   $0x2a
431eac:	59                   	pop    %ecx
431ead:	66 89 4d f4          	mov    %cx,-0xc(%ebp)
431eb1:	6a 3f                	push   $0x3f
431eb3:	59                   	pop    %ecx
431eb4:	66 89 4d f6          	mov    %cx,-0xa(%ebp)
431eb8:	33 c9                	xor    %ecx,%ecx
431eba:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
431ebe:	8d 4d f4             	lea    -0xc(%ebp),%ecx
431ec1:	51                   	push   %ecx
431ec2:	50                   	push   %eax
431ec3:	e8 6f 21 00 00       	call   0x434037
431ec8:	59                   	pop    %ecx
431ec9:	59                   	pop    %ecx
431eca:	85 c0                	test   %eax,%eax
431ecc:	75 18                	jne    0x431ee6
431ece:	8d 45 dc             	lea    -0x24(%ebp),%eax
431ed1:	50                   	push   %eax
431ed2:	53                   	push   %ebx
431ed3:	53                   	push   %ebx
431ed4:	ff 36                	push   (%esi)
431ed6:	e8 35 01 00 00       	call   0x432010
431edb:	8b f8                	mov    %eax,%edi
431edd:	83 c4 10             	add    $0x10,%esp
431ee0:	85 ff                	test   %edi,%edi
431ee2:	75 7b                	jne    0x431f5f
431ee4:	eb 13                	jmp    0x431ef9
431ee6:	8d 4d dc             	lea    -0x24(%ebp),%ecx
431ee9:	51                   	push   %ecx
431eea:	50                   	push   %eax
431eeb:	ff 36                	push   (%esi)
431eed:	e8 d2 01 00 00       	call   0x4320c4
431ef2:	83 c4 0c             	add    $0xc,%esp
431ef5:	85 c0                	test   %eax,%eax
431ef7:	75 1d                	jne    0x431f16
431ef9:	83 c6 04             	add    $0x4,%esi
431efc:	8b 06                	mov    (%esi),%eax
431efe:	85 c0                	test   %eax,%eax
431f00:	75 a8                	jne    0x431eaa
431f02:	8b 7d dc             	mov    -0x24(%ebp),%edi
431f05:	8b 55 e0             	mov    -0x20(%ebp),%edx
431f08:	8b da                	mov    %edx,%ebx
431f0a:	8b f7                	mov    %edi,%esi
431f0c:	2b df                	sub    %edi,%ebx
431f0e:	c1 fb 02             	sar    $0x2,%ebx
431f11:	43                   	inc    %ebx
431f12:	33 c0                	xor    %eax,%eax
431f14:	eb 26                	jmp    0x431f3c
431f16:	8b f8                	mov    %eax,%edi
431f18:	eb 45                	jmp    0x431f5f
431f1a:	8b 0e                	mov    (%esi),%ecx
431f1c:	8d 41 02             	lea    0x2(%ecx),%eax
431f1f:	89 45 f0             	mov    %eax,-0x10(%ebp)
431f22:	66 8b 01             	mov    (%ecx),%ax
431f25:	83 c1 02             	add    $0x2,%ecx
431f28:	66 3b 45 d8          	cmp    -0x28(%ebp),%ax
431f2c:	75 f4                	jne    0x431f22
431f2e:	2b 4d f0             	sub    -0x10(%ebp),%ecx
431f31:	8b 45 ec             	mov    -0x14(%ebp),%eax
431f34:	d1 f9                	sar    $1,%ecx
431f36:	40                   	inc    %eax
431f37:	03 c1                	add    %ecx,%eax
431f39:	83 c6 04             	add    $0x4,%esi
431f3c:	89 45 ec             	mov    %eax,-0x14(%ebp)