409dcf:	89 0d 9c f2 43 00    	mov    %ecx,0x43f29c
409dd5:	c6 05 85 f2 43 00 01 	movb   $0x1,0x43f285
409ddc:	b0 01                	mov    $0x1,%al
409dde:	5e                   	pop    %esi
409ddf:	5d                   	pop    %ebp
409de0:	c3                   	ret
409de1:	6a 05                	push   $0x5
409de3:	e8 94 04 00 00       	call   0x40a27c
409de8:	cc                   	int3
409de9:	6a 08                	push   $0x8
409deb:	68 b8 a9 43 00       	push   $0x43a9b8
409df0:	e8 db 06 00 00       	call   0x40a4d0
409df5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
409df9:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
409dfe:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
409e05:	75 5d                	jne    0x409e64
409e07:	a1 3c 00 40 00       	mov    0x40003c,%eax
409e0c:	81 b8 00 00 40 00 50 	cmpl   $0x4550,0x400000(%eax)
409e13:	45 00 00
409e16:	75 4c                	jne    0x409e64
409e18:	b9 0b 01 00 00       	mov    $0x10b,%ecx
409e1d:	66 39 88 18 00 40 00 	cmp    %cx,0x400018(%eax)
409e24:	75 3e                	jne    0x409e64
409e26:	8b 45 08             	mov    0x8(%ebp),%eax
409e29:	b9 00 00 40 00       	mov    $0x400000,%ecx
409e2e:	2b c1                	sub    %ecx,%eax
409e30:	50                   	push   %eax
409e31:	51                   	push   %ecx
409e32:	e8 7e fe ff ff       	call   0x409cb5
409e37:	59                   	pop    %ecx
409e38:	59                   	pop    %ecx
409e39:	85 c0                	test   %eax,%eax
409e3b:	74 27                	je     0x409e64
409e3d:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
409e41:	7c 21                	jl     0x409e64
409e43:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
409e4a:	b0 01                	mov    $0x1,%al
409e4c:	eb 1f                	jmp    0x409e6d
409e4e:	8b 45 ec             	mov    -0x14(%ebp),%eax
409e51:	8b 00                	mov    (%eax),%eax
409e53:	33 c9                	xor    %ecx,%ecx
409e55:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
409e5b:	0f 94 c1             	sete   %cl
409e5e:	8b c1                	mov    %ecx,%eax
409e60:	c3                   	ret
409e61:	8b 65 e8             	mov    -0x18(%ebp),%esp
409e64:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
409e6b:	32 c0                	xor    %al,%al
409e6d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
409e70:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
409e77:	59                   	pop    %ecx
409e78:	5f                   	pop    %edi
409e79:	5e                   	pop    %esi
409e7a:	5b                   	pop    %ebx
409e7b:	c9                   	leave
409e7c:	c3                   	ret
409e7d:	55                   	push   %ebp
409e7e:	8b ec                	mov    %esp,%ebp
409e80:	e8 bd 0b 00 00       	call   0x40aa42
409e85:	85 c0                	test   %eax,%eax
409e87:	74 0f                	je     0x409e98
409e89:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
409e8d:	75 09                	jne    0x409e98
409e8f:	33 c0                	xor    %eax,%eax
409e91:	b9 80 f2 43 00       	mov    $0x43f280,%ecx
409e96:	87 01                	xchg   %eax,(%ecx)
409e98:	5d                   	pop    %ebp
409e99:	c3                   	ret
409e9a:	55                   	push   %ebp
409e9b:	8b ec                	mov    %esp,%ebp
409e9d:	80 3d 84 f2 43 00 00 	cmpb   $0x0,0x43f284
409ea4:	74 06                	je     0x409eac
409ea6:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
409eaa:	75 12                	jne    0x409ebe
409eac:	ff 75 08             	push   0x8(%ebp)
409eaf:	e8 12 1f 01 00       	call   0x41bdc6
409eb4:	ff 75 08             	push   0x8(%ebp)
409eb7:	e8 b1 1c 00 00       	call   0x40bb6d
409ebc:	59                   	pop    %ecx
409ebd:	59                   	pop    %ecx
409ebe:	b0 01                	mov    $0x1,%al
409ec0:	5d                   	pop    %ebp
409ec1:	c3                   	ret
409ec2:	55                   	push   %ebp
409ec3:	8b ec                	mov    %esp,%ebp
409ec5:	83 3d 88 f2 43 00 ff 	cmpl   $0xffffffff,0x43f288
409ecc:	ff 75 08             	push   0x8(%ebp)
409ecf:	75 07                	jne    0x409ed8
409ed1:	e8 33 1d 01 00       	call   0x41bc09
409ed6:	eb 0b                	jmp    0x409ee3
409ed8:	68 88 f2 43 00       	push   $0x43f288
409edd:	e8 a4 1d 01 00       	call   0x41bc86
409ee2:	59                   	pop    %ecx
409ee3:	59                   	pop    %ecx
409ee4:	33 c9                	xor    %ecx,%ecx
409ee6:	85 c0                	test   %eax,%eax
409ee8:	0f 44 4d 08          	cmove  0x8(%ebp),%ecx
409eec:	8b c1                	mov    %ecx,%eax
409eee:	5d                   	pop    %ebp
409eef:	c3                   	ret
409ef0:	55                   	push   %ebp
409ef1:	8b ec                	mov    %esp,%ebp
409ef3:	ff 75 08             	push   0x8(%ebp)
409ef6:	e8 c7 ff ff ff       	call   0x409ec2
409efb:	f7 d8                	neg    %eax
409efd:	59                   	pop    %ecx
409efe:	1b c0                	sbb    %eax,%eax
409f00:	f7 d8                	neg    %eax
409f02:	48                   	dec    %eax
409f03:	5d                   	pop    %ebp
409f04:	c3                   	ret
409f05:	cc                   	int3
409f06:	cc                   	int3
409f07:	cc                   	int3
409f08:	cc                   	int3
409f09:	cc                   	int3
409f0a:	cc                   	int3
409f0b:	cc                   	int3
409f0c:	cc                   	int3
409f0d:	cc                   	int3
409f0e:	cc                   	int3
409f0f:	cc                   	int3
409f10:	57                   	push   %edi
409f11:	56                   	push   %esi
409f12:	53                   	push   %ebx
409f13:	33 ff                	xor    %edi,%edi
409f15:	8b 44 24 14          	mov    0x14(%esp),%eax
409f19:	0b c0                	or     %eax,%eax
409f1b:	7d 14                	jge    0x409f31
409f1d:	47                   	inc    %edi
409f1e:	8b 54 24 10          	mov    0x10(%esp),%edx
409f22:	f7 d8                	neg    %eax
409f24:	f7 da                	neg    %edx
409f26:	83 d8 00             	sbb    $0x0,%eax
409f29:	89 44 24 14          	mov    %eax,0x14(%esp)
409f2d:	89 54 24 10          	mov    %edx,0x10(%esp)
409f31:	8b 44 24 1c          	mov    0x1c(%esp),%eax
409f35:	0b c0                	or     %eax,%eax
409f37:	7d 14                	jge    0x409f4d
409f39:	47                   	inc    %edi
409f3a:	8b 54 24 18          	mov    0x18(%esp),%edx
409f3e:	f7 d8                	neg    %eax
409f40:	f7 da                	neg    %edx
409f42:	83 d8 00             	sbb    $0x0,%eax
409f45:	89 44 24 1c          	mov    %eax,0x1c(%esp)
409f49:	89 54 24 18          	mov    %edx,0x18(%esp)
409f4d:	0b c0                	or     %eax,%eax
409f4f:	75 18                	jne    0x409f69
409f51:	8b 4c 24 18          	mov    0x18(%esp),%ecx
409f55:	8b 44 24 14          	mov    0x14(%esp),%eax
409f59:	33 d2                	xor    %edx,%edx
409f5b:	f7 f1                	div    %ecx
409f5d:	8b d8                	mov    %eax,%ebx
409f5f:	8b 44 24 10          	mov    0x10(%esp),%eax
409f63:	f7 f1                	div    %ecx
409f65:	8b d3                	mov    %ebx,%edx
409f67:	eb 41                	jmp    0x409faa
409f69:	8b d8                	mov    %eax,%ebx
409f6b:	8b 4c 24 18          	mov    0x18(%esp),%ecx
409f6f:	8b 54 24 14          	mov    0x14(%esp),%edx
409f73:	8b 44 24 10          	mov    0x10(%esp),%eax
409f77:	d1 eb                	shr    $1,%ebx
409f79:	d1 d9                	rcr    $1,%ecx
409f7b:	d1 ea                	shr    $1,%edx
409f7d:	d1 d8                	rcr    $1,%eax
409f7f:	0b db                	or     %ebx,%ebx
409f81:	75 f4                	jne    0x409f77
409f83:	f7 f1                	div    %ecx
409f85:	8b f0                	mov    %eax,%esi
409f87:	f7 64 24 1c          	mull   0x1c(%esp)
409f8b:	8b c8                	mov    %eax,%ecx
409f8d:	8b 44 24 18          	mov    0x18(%esp),%eax
409f91:	f7 e6                	mul    %esi
409f93:	03 d1                	add    %ecx,%edx
409f95:	72 0e                	jb     0x409fa5
409f97:	3b 54 24 14          	cmp    0x14(%esp),%edx
409f9b:	77 08                	ja     0x409fa5
409f9d:	72 07                	jb     0x409fa6
409f9f:	3b 44 24 10          	cmp    0x10(%esp),%eax
409fa3:	76 01                	jbe    0x409fa6
409fa5:	4e                   	dec    %esi
409fa6:	33 d2                	xor    %edx,%edx
409fa8:	8b c6                	mov    %esi,%eax
409faa:	4f                   	dec    %edi
409fab:	75 07                	jne    0x409fb4
409fad:	f7 da                	neg    %edx
409faf:	f7 d8                	neg    %eax
409fb1:	83 da 00             	sbb    $0x0,%edx
409fb4:	5b                   	pop    %ebx
409fb5:	5e                   	pop    %esi
409fb6:	5f                   	pop    %edi
409fb7:	c2 10 00             	ret    $0x10
409fba:	cc                   	int3
409fbb:	cc                   	int3
409fbc:	cc                   	int3
409fbd:	cc                   	int3
409fbe:	cc                   	int3
409fbf:	cc                   	int3
409fc0:	8b 44 24 08          	mov    0x8(%esp),%eax
409fc4:	8b 4c 24 10          	mov    0x10(%esp),%ecx
409fc8:	0b c8                	or     %eax,%ecx
409fca:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
409fce:	75 09                	jne    0x409fd9
409fd0:	8b 44 24 04          	mov    0x4(%esp),%eax
409fd4:	f7 e1                	mul    %ecx
409fd6:	c2 10 00             	ret    $0x10
409fd9:	53                   	push   %ebx
409fda:	f7 e1                	mul    %ecx
409fdc:	8b d8                	mov    %eax,%ebx
409fde:	8b 44 24 08          	mov    0x8(%esp),%eax
409fe2:	f7 64 24 14          	mull   0x14(%esp)
409fe6:	03 d8                	add    %eax,%ebx
409fe8:	8b 44 24 08          	mov    0x8(%esp),%eax
409fec:	f7 e1                	mul    %ecx
409fee:	03 d3                	add    %ebx,%edx
409ff0:	5b                   	pop    %ebx
409ff1:	c2 10 00             	ret    $0x10
409ff4:	cc                   	int3
409ff5:	cc                   	int3
409ff6:	cc                   	int3
409ff7:	cc                   	int3
409ff8:	cc                   	int3
409ff9:	cc                   	int3
409ffa:	cc                   	int3
409ffb:	cc                   	int3
409ffc:	cc                   	int3
409ffd:	cc                   	int3
409ffe:	cc                   	int3
409fff:	cc                   	int3
40a000:	53                   	push   %ebx
40a001:	57                   	push   %edi
40a002:	33 ff                	xor    %edi,%edi
40a004:	8b 44 24 10          	mov    0x10(%esp),%eax
40a008:	0b c0                	or     %eax,%eax
40a00a:	7d 14                	jge    0x40a020
40a00c:	47                   	inc    %edi
40a00d:	8b 54 24 0c          	mov    0xc(%esp),%edx
40a011:	f7 d8                	neg    %eax
40a013:	f7 da                	neg    %edx
40a015:	83 d8 00             	sbb    $0x0,%eax
40a018:	89 44 24 10          	mov    %eax,0x10(%esp)
40a01c:	89 54 24 0c          	mov    %edx,0xc(%esp)
40a020:	8b 44 24 18          	mov    0x18(%esp),%eax
40a024:	0b c0                	or     %eax,%eax
40a026:	7d 13                	jge    0x40a03b
40a028:	8b 54 24 14          	mov    0x14(%esp),%edx
40a02c:	f7 d8                	neg    %eax
40a02e:	f7 da                	neg    %edx
40a030:	83 d8 00             	sbb    $0x0,%eax
40a033:	89 44 24 18          	mov    %eax,0x18(%esp)
40a037:	89 54 24 14          	mov    %edx,0x14(%esp)
40a03b:	0b c0                	or     %eax,%eax
40a03d:	75 1b                	jne    0x40a05a
40a03f:	8b 4c 24 14          	mov    0x14(%esp),%ecx
40a043:	8b 44 24 10          	mov    0x10(%esp),%eax
40a047:	33 d2                	xor    %edx,%edx
40a049:	f7 f1                	div    %ecx
40a04b:	8b 44 24 0c          	mov    0xc(%esp),%eax
40a04f:	f7 f1                	div    %ecx
40a051:	8b c2                	mov    %edx,%eax
40a053:	33 d2                	xor    %edx,%edx
40a055:	4f                   	dec    %edi
40a056:	79 4e                	jns    0x40a0a6
40a058:	eb 53                	jmp    0x40a0ad
40a05a:	8b d8                	mov    %eax,%ebx
40a05c:	8b 4c 24 14          	mov    0x14(%esp),%ecx
40a060:	8b 54 24 10          	mov    0x10(%esp),%edx
40a064:	8b 44 24 0c          	mov    0xc(%esp),%eax
40a068:	d1 eb                	shr    $1,%ebx
40a06a:	d1 d9                	rcr    $1,%ecx
40a06c:	d1 ea                	shr    $1,%edx
40a06e:	d1 d8                	rcr    $1,%eax
40a070:	0b db                	or     %ebx,%ebx
40a072:	75 f4                	jne    0x40a068
40a074:	f7 f1                	div    %ecx
40a076:	8b c8                	mov    %eax,%ecx
40a078:	f7 64 24 18          	mull   0x18(%esp)
40a07c:	91                   	xchg   %eax,%ecx
40a07d:	f7 64 24 14          	mull   0x14(%esp)
40a081:	03 d1                	add    %ecx,%edx
40a083:	72 0e                	jb     0x40a093
40a085:	3b 54 24 10          	cmp    0x10(%esp),%edx
40a089:	77 08                	ja     0x40a093
40a08b:	72 0e                	jb     0x40a09b
40a08d:	3b 44 24 0c          	cmp    0xc(%esp),%eax
40a091:	76 08                	jbe    0x40a09b
40a093:	2b 44 24 14          	sub    0x14(%esp),%eax
40a097:	1b 54 24 18          	sbb    0x18(%esp),%edx
40a09b:	2b 44 24 0c          	sub    0xc(%esp),%eax
40a09f:	1b 54 24 10          	sbb    0x10(%esp),%edx
40a0a3:	4f                   	dec    %edi
40a0a4:	79 07                	jns    0x40a0ad
40a0a6:	f7 da                	neg    %edx
40a0a8:	f7 d8                	neg    %eax
40a0aa:	83 da 00             	sbb    $0x0,%edx
40a0ad:	5f                   	pop    %edi
40a0ae:	5b                   	pop    %ebx
40a0af:	c2 10 00             	ret    $0x10
40a0b2:	cc                   	int3
40a0b3:	cc                   	int3
40a0b4:	cc                   	int3
40a0b5:	cc                   	int3
40a0b6:	cc                   	int3
40a0b7:	cc                   	int3
40a0b8:	cc                   	int3
40a0b9:	cc                   	int3
40a0ba:	cc                   	int3
40a0bb:	cc                   	int3
40a0bc:	cc                   	int3
40a0bd:	cc                   	int3
40a0be:	cc                   	int3
40a0bf:	cc                   	int3
40a0c0:	51                   	push   %ecx
40a0c1:	8d 4c 24 04          	lea    0x4(%esp),%ecx
40a0c5:	2b c8                	sub    %eax,%ecx
40a0c7:	1b c0                	sbb    %eax,%eax
40a0c9:	f7 d0                	not    %eax
40a0cb:	23 c8                	and    %eax,%ecx
40a0cd:	8b c4                	mov    %esp,%eax
40a0cf:	25 00 f0 ff ff       	and    $0xfffff000,%eax
40a0d4:	3b c8                	cmp    %eax,%ecx
40a0d6:	72 0a                	jb     0x40a0e2
40a0d8:	8b c1                	mov    %ecx,%eax
40a0da:	59                   	pop    %ecx
40a0db:	94                   	xchg   %eax,%esp
40a0dc:	8b 00                	mov    (%eax),%eax
40a0de:	89 04 24             	mov    %eax,(%esp)
40a0e1:	c3                   	ret
40a0e2:	2d 00 10 00 00       	sub    $0x1000,%eax
40a0e7:	85 00                	test   %eax,(%eax)
40a0e9:	eb e9                	jmp    0x40a0d4
40a0eb:	cc                   	int3
40a0ec:	cc                   	int3
40a0ed:	cc                   	int3
40a0ee:	cc                   	int3
40a0ef:	cc                   	int3
40a0f0:	e9 0b 00 00 00       	jmp    0x40a100
40a0f5:	cc                   	int3
40a0f6:	cc                   	int3
40a0f7:	cc                   	int3
40a0f8:	cc                   	int3
40a0f9:	cc                   	int3
40a0fa:	cc                   	int3
40a0fb:	cc                   	int3
40a0fc:	cc                   	int3
40a0fd:	cc                   	int3
40a0fe:	cc                   	int3
40a0ff:	cc                   	int3
40a100:	83 3d d0 f5 43 00 02 	cmpl   $0x2,0x43f5d0
40a107:	7c 08                	jl     0x40a111