409e4d:	cc                   	int3
409e4e:	cc                   	int3
409e4f:	cc                   	int3
409e50:	e8 6c 04 00 00       	call   0x40a2c1
409e55:	e9 68 fe ff ff       	jmp    0x409cc2
409e5a:	cc                   	int3
409e5b:	cc                   	int3
409e5c:	cc                   	int3
409e5d:	cc                   	int3
409e5e:	cc                   	int3
409e5f:	cc                   	int3
409e60:	3b 0d 50 d1 40 00    	cmp    0x40d150,%ecx
409e66:	f2 75 02             	bnd jne 0x409e6b
409e69:	f2 c3                	bnd ret
409e6b:	f2 e9 4e 00 00 00    	bnd jmp 0x409ebf
409e71:	8b ff                	mov    %edi,%edi
409e73:	55                   	push   %ebp
409e74:	8b ec                	mov    %esp,%ebp
409e76:	ff 15 30 e0 40 00    	call   *0x40e030
409e7c:	6a 01                	push   $0x1
409e7e:	a3 ac d4 40 00       	mov    %eax,0x40d4ac
409e83:	e8 ab 06 00 00       	call   0x40a533
409e88:	59                   	pop    %ecx
409e89:	6a 00                	push   $0x0
409e8b:	ff 15 4c e0 40 00    	call   *0x40e04c
409e91:	ff 75 08             	push   0x8(%ebp)
409e94:	ff 15 48 e0 40 00    	call   *0x40e048
409e9a:	83 3d ac d4 40 00 00 	cmpl   $0x0,0x40d4ac
409ea1:	75 08                	jne    0x409eab
409ea3:	6a 01                	push   $0x1
409ea5:	e8 89 06 00 00       	call   0x40a533
409eaa:	59                   	pop    %ecx
409eab:	68 09 04 00 c0       	push   $0xc0000409
409eb0:	ff 15 a8 e0 40 00    	call   *0x40e0a8
409eb6:	50                   	push   %eax
409eb7:	ff 15 b0 e0 40 00    	call   *0x40e0b0
409ebd:	5d                   	pop    %ebp
409ebe:	c3                   	ret
409ebf:	8b ff                	mov    %edi,%edi
409ec1:	55                   	push   %ebp
409ec2:	8b ec                	mov    %esp,%ebp
409ec4:	81 ec 24 03 00 00    	sub    $0x324,%esp
409eca:	6a 17                	push   $0x17
409ecc:	ff 15 bc e0 40 00    	call   *0x40e0bc
409ed2:	85 c0                	test   %eax,%eax
409ed4:	74 05                	je     0x409edb
409ed6:	6a 02                	push   $0x2
409ed8:	59                   	pop    %ecx
409ed9:	cd 29                	int    $0x29
409edb:	a3 90 d2 40 00       	mov    %eax,0x40d290
409ee0:	89 0d 8c d2 40 00    	mov    %ecx,0x40d28c
409ee6:	89 15 88 d2 40 00    	mov    %edx,0x40d288
409eec:	89 1d 84 d2 40 00    	mov    %ebx,0x40d284
409ef2:	89 35 80 d2 40 00    	mov    %esi,0x40d280
409ef8:	89 3d 7c d2 40 00    	mov    %edi,0x40d27c
409efe:	66 8c 15 a8 d2 40 00 	data16 mov %ss,0x40d2a8
409f05:	66 8c 0d 9c d2 40 00 	data16 mov %cs,0x40d29c
409f0c:	66 8c 1d 78 d2 40 00 	data16 mov %ds,0x40d278
409f13:	66 8c 05 74 d2 40 00 	data16 mov %es,0x40d274
409f1a:	66 8c 25 70 d2 40 00 	data16 mov %fs,0x40d270
409f21:	66 8c 2d 6c d2 40 00 	data16 mov %gs,0x40d26c
409f28:	9c                   	pushf
409f29:	8f 05 a0 d2 40 00    	pop    0x40d2a0
409f2f:	8b 45 00             	mov    0x0(%ebp),%eax
409f32:	a3 94 d2 40 00       	mov    %eax,0x40d294
409f37:	8b 45 04             	mov    0x4(%ebp),%eax
409f3a:	a3 98 d2 40 00       	mov    %eax,0x40d298
409f3f:	8d 45 08             	lea    0x8(%ebp),%eax
409f42:	a3 a4 d2 40 00       	mov    %eax,0x40d2a4
409f47:	8b 85 dc fc ff ff    	mov    -0x324(%ebp),%eax
409f4d:	c7 05 e0 d1 40 00 01 	movl   $0x10001,0x40d1e0
409f54:	00 01 00
409f57:	a1 98 d2 40 00       	mov    0x40d298,%eax
409f5c:	a3 9c d1 40 00       	mov    %eax,0x40d19c
409f61:	c7 05 90 d1 40 00 09 	movl   $0xc0000409,0x40d190
409f68:	04 00 c0
409f6b:	c7 05 94 d1 40 00 01 	movl   $0x1,0x40d194
409f72:	00 00 00
409f75:	c7 05 a0 d1 40 00 01 	movl   $0x1,0x40d1a0
409f7c:	00 00 00
409f7f:	6a 04                	push   $0x4
409f81:	58                   	pop    %eax
409f82:	6b c0 00             	imul   $0x0,%eax,%eax
409f85:	c7 80 a4 d1 40 00 02 	movl   $0x2,0x40d1a4(%eax)
409f8c:	00 00 00
409f8f:	6a 04                	push   $0x4
409f91:	58                   	pop    %eax
409f92:	6b c0 00             	imul   $0x0,%eax,%eax
409f95:	8b 0d 50 d1 40 00    	mov    0x40d150,%ecx
409f9b:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
409f9f:	6a 04                	push   $0x4
409fa1:	58                   	pop    %eax
409fa2:	c1 e0 00             	shl    $0x0,%eax
409fa5:	8b 0d 54 d1 40 00    	mov    0x40d154,%ecx
409fab:	89 4c 05 f8          	mov    %ecx,-0x8(%ebp,%eax,1)
409faf:	68 00 10 40 00       	push   $0x401000
409fb4:	e8 b8 fe ff ff       	call   0x409e71
409fb9:	c9                   	leave
409fba:	c3                   	ret
409fbb:	8b ff                	mov    %edi,%edi
409fbd:	55                   	push   %ebp
409fbe:	8b ec                	mov    %esp,%ebp
409fc0:	8b 45 08             	mov    0x8(%ebp),%eax
409fc3:	56                   	push   %esi
409fc4:	8b 48 3c             	mov    0x3c(%eax),%ecx
409fc7:	03 c8                	add    %eax,%ecx
409fc9:	0f b7 41 14          	movzwl 0x14(%ecx),%eax
409fcd:	8d 51 18             	lea    0x18(%ecx),%edx
409fd0:	03 d0                	add    %eax,%edx
409fd2:	0f b7 41 06          	movzwl 0x6(%ecx),%eax
409fd6:	6b f0 28             	imul   $0x28,%eax,%esi
409fd9:	03 f2                	add    %edx,%esi
409fdb:	3b d6                	cmp    %esi,%edx
409fdd:	74 19                	je     0x409ff8
409fdf:	8b 4d 0c             	mov    0xc(%ebp),%ecx
409fe2:	3b 4a 0c             	cmp    0xc(%edx),%ecx
409fe5:	72 0a                	jb     0x409ff1
409fe7:	8b 42 08             	mov    0x8(%edx),%eax
409fea:	03 42 0c             	add    0xc(%edx),%eax
409fed:	3b c8                	cmp    %eax,%ecx
409fef:	72 0c                	jb     0x409ffd
409ff1:	83 c2 28             	add    $0x28,%edx
409ff4:	3b d6                	cmp    %esi,%edx
409ff6:	75 ea                	jne    0x409fe2
409ff8:	33 c0                	xor    %eax,%eax
409ffa:	5e                   	pop    %esi
409ffb:	5d                   	pop    %ebp
409ffc:	c3                   	ret
409ffd:	8b c2                	mov    %edx,%eax
409fff:	eb f9                	jmp    0x409ffa
40a001:	8b ff                	mov    %edi,%edi
40a003:	56                   	push   %esi
40a004:	e8 c5 07 00 00       	call   0x40a7ce
40a009:	85 c0                	test   %eax,%eax
40a00b:	74 20                	je     0x40a02d
40a00d:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
40a013:	be b4 d4 40 00       	mov    $0x40d4b4,%esi
40a018:	8b 50 04             	mov    0x4(%eax),%edx
40a01b:	eb 04                	jmp    0x40a021
40a01d:	3b d0                	cmp    %eax,%edx
40a01f:	74 10                	je     0x40a031
40a021:	33 c0                	xor    %eax,%eax
40a023:	8b ca                	mov    %edx,%ecx
40a025:	f0 0f b1 0e          	lock cmpxchg %ecx,(%esi)
40a029:	85 c0                	test   %eax,%eax
40a02b:	75 f0                	jne    0x40a01d
40a02d:	32 c0                	xor    %al,%al
40a02f:	5e                   	pop    %esi
40a030:	c3                   	ret
40a031:	b0 01                	mov    $0x1,%al
40a033:	5e                   	pop    %esi
40a034:	c3                   	ret
40a035:	8b ff                	mov    %edi,%edi
40a037:	55                   	push   %ebp
40a038:	8b ec                	mov    %esp,%ebp
40a03a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
40a03e:	75 07                	jne    0x40a047
40a040:	c6 05 d1 d4 40 00 01 	movb   $0x1,0x40d4d1
40a047:	e8 e5 05 00 00       	call   0x40a631
40a04c:	e8 d4 02 00 00       	call   0x40a325
40a051:	84 c0                	test   %al,%al
40a053:	75 04                	jne    0x40a059
40a055:	32 c0                	xor    %al,%al
40a057:	5d                   	pop    %ebp
40a058:	c3                   	ret
40a059:	e8 c7 02 00 00       	call   0x40a325
40a05e:	84 c0                	test   %al,%al
40a060:	75 0a                	jne    0x40a06c
40a062:	6a 00                	push   $0x0
40a064:	e8 bc 02 00 00       	call   0x40a325
40a069:	59                   	pop    %ecx
40a06a:	eb e9                	jmp    0x40a055
40a06c:	b0 01                	mov    $0x1,%al
40a06e:	5d                   	pop    %ebp
40a06f:	c3                   	ret
40a070:	8b ff                	mov    %edi,%edi
40a072:	55                   	push   %ebp
40a073:	8b ec                	mov    %esp,%ebp
40a075:	80 3d d0 d4 40 00 00 	cmpb   $0x0,0x40d4d0
40a07c:	74 04                	je     0x40a082
40a07e:	b0 01                	mov    $0x1,%al
40a080:	5d                   	pop    %ebp
40a081:	c3                   	ret
40a082:	56                   	push   %esi
40a083:	8b 75 08             	mov    0x8(%ebp),%esi
40a086:	85 f6                	test   %esi,%esi
40a088:	74 05                	je     0x40a08f
40a08a:	83 fe 01             	cmp    $0x1,%esi
40a08d:	75 77                	jne    0x40a106
40a08f:	e8 3a 07 00 00       	call   0x40a7ce
40a094:	85 c0                	test   %eax,%eax
40a096:	74 26                	je     0x40a0be
40a098:	85 f6                	test   %esi,%esi
40a09a:	75 22                	jne    0x40a0be
40a09c:	68 b8 d4 40 00       	push   $0x40d4b8
40a0a1:	e8 bd 07 00 00       	call   0x40a863
40a0a6:	59                   	pop    %ecx
40a0a7:	85 c0                	test   %eax,%eax
40a0a9:	75 0f                	jne    0x40a0ba
40a0ab:	68 c4 d4 40 00       	push   $0x40d4c4
40a0b0:	e8 ae 07 00 00       	call   0x40a863
40a0b5:	59                   	pop    %ecx
40a0b6:	85 c0                	test   %eax,%eax
40a0b8:	74 40                	je     0x40a0fa
40a0ba:	32 c0                	xor    %al,%al
40a0bc:	eb 45                	jmp    0x40a103
40a0be:	a1 50 d1 40 00       	mov    0x40d150,%eax
40a0c3:	83 ce ff             	or     $0xffffffff,%esi
40a0c6:	6a 20                	push   $0x20
40a0c8:	83 e0 1f             	and    $0x1f,%eax
40a0cb:	59                   	pop    %ecx
40a0cc:	2b c8                	sub    %eax,%ecx
40a0ce:	d3 ce                	ror    %cl,%esi
40a0d0:	33 35 50 d1 40 00    	xor    0x40d150,%esi
40a0d6:	89 35 b8 d4 40 00    	mov    %esi,0x40d4b8
40a0dc:	89 35 bc d4 40 00    	mov    %esi,0x40d4bc
40a0e2:	89 35 c0 d4 40 00    	mov    %esi,0x40d4c0
40a0e8:	89 35 c4 d4 40 00    	mov    %esi,0x40d4c4
40a0ee:	89 35 c8 d4 40 00    	mov    %esi,0x40d4c8
40a0f4:	89 35 cc d4 40 00    	mov    %esi,0x40d4cc
40a0fa:	c6 05 d0 d4 40 00 01 	movb   $0x1,0x40d4d0
40a101:	b0 01                	mov    $0x1,%al
40a103:	5e                   	pop    %esi
40a104:	5d                   	pop    %ebp
40a105:	c3                   	ret
40a106:	6a 05                	push   $0x5
40a108:	e8 6f 02 00 00       	call   0x40a37c
40a10d:	cc                   	int3
40a10e:	6a 08                	push   $0x8
40a110:	68 a0 c5 40 00       	push   $0x40c5a0
40a115:	e8 86 04 00 00       	call   0x40a5a0
40a11a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40a11e:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
40a123:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
40a12a:	75 5d                	jne    0x40a189
40a12c:	a1 3c 00 40 00       	mov    0x40003c,%eax
40a131:	81 b8 00 00 40 00 50 	cmpl   $0x4550,0x400000(%eax)
40a138:	45 00 00
40a13b:	75 4c                	jne    0x40a189
40a13d:	b9 0b 01 00 00       	mov    $0x10b,%ecx
40a142:	66 39 88 18 00 40 00 	cmp    %cx,0x400018(%eax)
40a149:	75 3e                	jne    0x40a189
40a14b:	8b 45 08             	mov    0x8(%ebp),%eax
40a14e:	b9 00 00 40 00       	mov    $0x400000,%ecx
40a153:	2b c1                	sub    %ecx,%eax
40a155:	50                   	push   %eax
40a156:	51                   	push   %ecx
40a157:	e8 5f fe ff ff       	call   0x409fbb
40a15c:	59                   	pop    %ecx
40a15d:	59                   	pop    %ecx
40a15e:	85 c0                	test   %eax,%eax
40a160:	74 27                	je     0x40a189
40a162:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
40a166:	7c 21                	jl     0x40a189
40a168:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40a16f:	b0 01                	mov    $0x1,%al
40a171:	eb 1f                	jmp    0x40a192
40a173:	8b 45 ec             	mov    -0x14(%ebp),%eax
40a176:	8b 00                	mov    (%eax),%eax
40a178:	33 c9                	xor    %ecx,%ecx
40a17a:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
40a180:	0f 94 c1             	sete   %cl
40a183:	8b c1                	mov    %ecx,%eax
40a185:	c3                   	ret
40a186:	8b 65 e8             	mov    -0x18(%ebp),%esp
40a189:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40a190:	32 c0                	xor    %al,%al
40a192:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40a195:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40a19c:	59                   	pop    %ecx
40a19d:	5f                   	pop    %edi
40a19e:	5e                   	pop    %esi
40a19f:	5b                   	pop    %ebx
40a1a0:	c9                   	leave
40a1a1:	c3                   	ret
40a1a2:	8b ff                	mov    %edi,%edi
40a1a4:	55                   	push   %ebp
40a1a5:	8b ec                	mov    %esp,%ebp
40a1a7:	e8 22 06 00 00       	call   0x40a7ce
40a1ac:	85 c0                	test   %eax,%eax
40a1ae:	74 0f                	je     0x40a1bf
40a1b0:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
40a1b4:	75 09                	jne    0x40a1bf
40a1b6:	33 c0                	xor    %eax,%eax
40a1b8:	b9 b4 d4 40 00       	mov    $0x40d4b4,%ecx
40a1bd:	87 01                	xchg   %eax,(%ecx)
40a1bf:	5d                   	pop    %ebp
40a1c0:	c3                   	ret
40a1c1:	8b ff                	mov    %edi,%edi
40a1c3:	55                   	push   %ebp
40a1c4:	8b ec                	mov    %esp,%ebp
40a1c6:	80 3d d1 d4 40 00 00 	cmpb   $0x0,0x40d4d1
40a1cd:	74 06                	je     0x40a1d5
40a1cf:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
40a1d3:	75 12                	jne    0x40a1e7
40a1d5:	ff 75 08             	push   0x8(%ebp)
40a1d8:	e8 48 01 00 00       	call   0x40a325
40a1dd:	ff 75 08             	push   0x8(%ebp)
40a1e0:	e8 40 01 00 00       	call   0x40a325
40a1e5:	59                   	pop    %ecx
40a1e6:	59                   	pop    %ecx
40a1e7:	b0 01                	mov    $0x1,%al
40a1e9:	5d                   	pop    %ebp
40a1ea:	c3                   	ret
40a1eb:	8b ff                	mov    %edi,%edi
40a1ed:	55                   	push   %ebp
40a1ee:	8b ec                	mov    %esp,%ebp
40a1f0:	a1 50 d1 40 00       	mov    0x40d150,%eax
40a1f5:	8b c8                	mov    %eax,%ecx
40a1f7:	33 05 b8 d4 40 00    	xor    0x40d4b8,%eax
40a1fd:	83 e1 1f             	and    $0x1f,%ecx
40a200:	ff 75 08             	push   0x8(%ebp)
40a203:	d3 c8                	ror    %cl,%eax
40a205:	83 f8 ff             	cmp    $0xffffffff,%eax
40a208:	75 07                	jne    0x40a211
40a20a:	e8 42 06 00 00       	call   0x40a851
40a20f:	eb 0b                	jmp    0x40a21c
40a211:	68 b8 d4 40 00       	push   $0x40d4b8
40a216:	e8 5a 06 00 00       	call   0x40a875
40a21b:	59                   	pop    %ecx
40a21c:	f7 d8                	neg    %eax
40a21e:	59                   	pop    %ecx
40a21f:	1b c0                	sbb    %eax,%eax
40a221:	f7 d0                	not    %eax
40a223:	23 45 08             	and    0x8(%ebp),%eax
40a226:	5d                   	pop    %ebp
40a227:	c3                   	ret
40a228:	8b ff                	mov    %edi,%edi
40a22a:	55                   	push   %ebp
40a22b:	8b ec                	mov    %esp,%ebp
40a22d:	ff 75 08             	push   0x8(%ebp)
40a230:	e8 b6 ff ff ff       	call   0x40a1eb
40a235:	f7 d8                	neg    %eax
40a237:	59                   	pop    %ecx
40a238:	1b c0                	sbb    %eax,%eax
40a23a:	f7 d8                	neg    %eax
40a23c:	48                   	dec    %eax
40a23d:	5d                   	pop    %ebp
40a23e:	c3                   	ret
40a23f:	8b ff                	mov    %edi,%edi
40a241:	55                   	push   %ebp
40a242:	8b ec                	mov    %esp,%ebp
40a244:	ff 75 08             	push   0x8(%ebp)
40a247:	e8 8e 05 00 00       	call   0x40a7da
40a24c:	59                   	pop    %ecx
40a24d:	5d                   	pop    %ebp
40a24e:	c3                   	ret
40a24f:	cc                   	int3
40a250:	8b ff                	mov    %edi,%edi
40a252:	55                   	push   %ebp