41ef43:	56                   	push   %esi
41ef44:	e8 81 d2 fe ff       	call   0x40c1ca
41ef49:	59                   	pop    %ecx
41ef4a:	8b c6                	mov    %esi,%eax
41ef4c:	5e                   	pop    %esi
41ef4d:	5d                   	pop    %ebp
41ef4e:	c2 04 00             	ret    $0x4
41ef51:	8b ff                	mov    %edi,%edi
41ef53:	55                   	push   %ebp
41ef54:	8b ec                	mov    %esp,%ebp
41ef56:	83 ec 0c             	sub    $0xc,%esp
41ef59:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41ef5c:	e8 00 ff ff ff       	call   0x41ee61
41ef61:	68 dc cf 44 00       	push   $0x44cfdc
41ef66:	8d 45 f4             	lea    -0xc(%ebp),%eax
41ef69:	50                   	push   %eax
41ef6a:	e8 c6 06 00 00       	call   0x41f635
41ef6f:	cc                   	int3
41ef70:	8b ff                	mov    %edi,%edi
41ef72:	55                   	push   %ebp
41ef73:	8b ec                	mov    %esp,%ebp
41ef75:	83 ec 0c             	sub    $0xc,%esp
41ef78:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41ef7b:	ff 75 08             	push   0x8(%ebp)
41ef7e:	e8 2e ff ff ff       	call   0x41eeb1
41ef83:	68 4c d0 44 00       	push   $0x44d04c
41ef88:	8d 45 f4             	lea    -0xc(%ebp),%eax
41ef8b:	50                   	push   %eax
41ef8c:	e8 a4 06 00 00       	call   0x41f635
41ef91:	cc                   	int3
41ef92:	8b ff                	mov    %edi,%edi
41ef94:	55                   	push   %ebp
41ef95:	8b ec                	mov    %esp,%ebp
41ef97:	83 ec 0c             	sub    $0xc,%esp
41ef9a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41ef9d:	ff 75 08             	push   0x8(%ebp)
41efa0:	e8 0c ff ff ff       	call   0x41eeb1
41efa5:	68 88 d0 44 00       	push   $0x44d088
41efaa:	8d 45 f4             	lea    -0xc(%ebp),%eax
41efad:	50                   	push   %eax
41efae:	e8 82 06 00 00       	call   0x41f635
41efb3:	cc                   	int3
41efb4:	8b ff                	mov    %edi,%edi
41efb6:	55                   	push   %ebp
41efb7:	8b ec                	mov    %esp,%ebp
41efb9:	ff 75 0c             	push   0xc(%ebp)
41efbc:	8b 4d 08             	mov    0x8(%ebp),%ecx
41efbf:	ff 15 14 12 45 00    	call   *0x451214
41efc5:	5d                   	pop    %ebp
41efc6:	c3                   	ret
41efc7:	cc                   	int3
41efc8:	cc                   	int3
41efc9:	cc                   	int3
41efca:	cc                   	int3
41efcb:	cc                   	int3
41efcc:	cc                   	int3
41efcd:	cc                   	int3
41efce:	cc                   	int3
41efcf:	cc                   	int3
41efd0:	e8 c5 02 00 00       	call   0x41f29a
41efd5:	6a 02                	push   $0x2
41efd7:	a3 b8 05 45 00       	mov    %eax,0x4505b8
41efdc:	e8 77 08 00 00       	call   0x41f858
41efe1:	50                   	push   %eax
41efe2:	ff 15 00 12 45 00    	call   *0x451200
41efe8:	83 0d 38 09 45 00 ff 	orl    $0xffffffff,0x450938
41efef:	83 0d 3c 09 45 00 ff 	orl    $0xffffffff,0x45093c
41eff6:	59                   	pop    %ecx
41eff7:	59                   	pop    %ecx
41eff8:	ff 15 e4 11 45 00    	call   *0x4511e4
41effe:	8b 0d e8 08 45 00    	mov    0x4508e8,%ecx
41f004:	89 08                	mov    %ecx,(%eax)
41f006:	ff 15 0c 12 45 00    	call   *0x45120c
41f00c:	8b 0d dc 08 45 00    	mov    0x4508dc,%ecx
41f012:	89 08                	mov    %ecx,(%eax)
41f014:	e8 d7 70 ff ff       	call   0x4160f0
41f019:	83 3d 50 02 45 00 00 	cmpl   $0x0,0x450250
41f020:	75 0c                	jne    0x41f02e
41f022:	68 f0 60 41 00       	push   $0x4160f0
41f027:	ff 15 60 12 45 00    	call   *0x451260
41f02d:	59                   	pop    %ecx
41f02e:	e8 4a 0a 00 00       	call   0x41fa7d
41f033:	33 c0                	xor    %eax,%eax
41f035:	c3                   	ret
41f036:	cc                   	int3
41f037:	cc                   	int3
41f038:	cc                   	int3
41f039:	cc                   	int3
41f03a:	cc                   	int3
41f03b:	cc                   	int3
41f03c:	cc                   	int3
41f03d:	cc                   	int3
41f03e:	cc                   	int3
41f03f:	cc                   	int3
41f040:	a1 e4 08 45 00       	mov    0x4508e4,%eax
41f045:	68 bc 05 45 00       	push   $0x4505bc
41f04a:	ff 35 e0 08 45 00    	push   0x4508e0
41f050:	a3 bc 05 45 00       	mov    %eax,0x4505bc
41f055:	68 b0 05 45 00       	push   $0x4505b0
41f05a:	68 ac 05 45 00       	push   $0x4505ac
41f05f:	68 a8 05 45 00       	push   $0x4505a8
41f064:	ff 15 04 12 45 00    	call   *0x451204
41f06a:	83 c4 14             	add    $0x14,%esp
41f06d:	a3 b4 05 45 00       	mov    %eax,0x4505b4
41f072:	c3                   	ret
41f073:	cc                   	int3
41f074:	cc                   	int3
41f075:	cc                   	int3
41f076:	cc                   	int3
41f077:	cc                   	int3
41f078:	cc                   	int3
41f079:	cc                   	int3
41f07a:	cc                   	int3
41f07b:	cc                   	int3
41f07c:	cc                   	int3
41f07d:	cc                   	int3
41f07e:	cc                   	int3
41f07f:	cc                   	int3
41f080:	e8 60 09 00 00       	call   0x41f9e5
41f085:	e9 00 00 00 00       	jmp    0x41f08a
41f08a:	6a 58                	push   $0x58
41f08c:	68 c8 d0 44 00       	push   $0x44d0c8
41f091:	e8 02 0a 00 00       	call   0x41fa98
41f096:	33 db                	xor    %ebx,%ebx
41f098:	89 5d e0             	mov    %ebx,-0x20(%ebp)
41f09b:	8d 45 98             	lea    -0x68(%ebp),%eax
41f09e:	50                   	push   %eax
41f09f:	ff 15 d0 10 45 00    	call   *0x4510d0
41f0a5:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41f0a8:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
41f0ae:	8b 70 04             	mov    0x4(%eax),%esi
41f0b1:	8b fb                	mov    %ebx,%edi
41f0b3:	ba 30 09 45 00       	mov    $0x450930,%edx
41f0b8:	8b ce                	mov    %esi,%ecx
41f0ba:	33 c0                	xor    %eax,%eax
41f0bc:	f0 0f b1 0a          	lock cmpxchg %ecx,(%edx)
41f0c0:	85 c0                	test   %eax,%eax
41f0c2:	74 18                	je     0x41f0dc
41f0c4:	3b c6                	cmp    %esi,%eax
41f0c6:	75 07                	jne    0x41f0cf
41f0c8:	33 f6                	xor    %esi,%esi
41f0ca:	46                   	inc    %esi
41f0cb:	8b fe                	mov    %esi,%edi
41f0cd:	eb 10                	jmp    0x41f0df
41f0cf:	68 e8 03 00 00       	push   $0x3e8
41f0d4:	ff 15 58 11 45 00    	call   *0x451158
41f0da:	eb d7                	jmp    0x41f0b3
41f0dc:	33 f6                	xor    %esi,%esi
41f0de:	46                   	inc    %esi
41f0df:	39 35 34 09 45 00    	cmp    %esi,0x450934
41f0e5:	75 0a                	jne    0x41f0f1
41f0e7:	6a 1f                	push   $0x1f
41f0e9:	e8 a0 07 00 00       	call   0x41f88e
41f0ee:	59                   	pop    %ecx
41f0ef:	eb 3a                	jmp    0x41f12b
41f0f1:	39 1d 34 09 45 00    	cmp    %ebx,0x450934
41f0f7:	75 2c                	jne    0x41f125
41f0f9:	89 35 34 09 45 00    	mov    %esi,0x450934
41f0ff:	68 50 55 40 00       	push   $0x405550
41f104:	68 44 55 40 00       	push   $0x405544
41f109:	e8 5b 01 00 00       	call   0x41f269
41f10e:	59                   	pop    %ecx
41f10f:	59                   	pop    %ecx
41f110:	85 c0                	test   %eax,%eax
41f112:	74 17                	je     0x41f12b
41f114:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41f11b:	b8 ff 00 00 00       	mov    $0xff,%eax
41f120:	e9 34 01 00 00       	jmp    0x41f259
41f125:	89 35 a4 05 45 00    	mov    %esi,0x4505a4
41f12b:	39 35 34 09 45 00    	cmp    %esi,0x450934
41f131:	75 1b                	jne    0x41f14e
41f133:	68 40 55 40 00       	push   $0x405540
41f138:	68 14 55 40 00       	push   $0x405514
41f13d:	e8 4e 09 00 00       	call   0x41fa90
41f142:	59                   	pop    %ecx
41f143:	59                   	pop    %ecx
41f144:	c7 05 34 09 45 00 02 	movl   $0x2,0x450934
41f14b:	00 00 00
41f14e:	85 ff                	test   %edi,%edi
41f150:	75 09                	jne    0x41f15b
41f152:	33 c0                	xor    %eax,%eax
41f154:	b9 30 09 45 00       	mov    $0x450930,%ecx
41f159:	87 01                	xchg   %eax,(%ecx)
41f15b:	83 3d 40 09 45 00 00 	cmpl   $0x0,0x450940
41f162:	74 23                	je     0x41f187
41f164:	68 40 09 45 00       	push   $0x450940
41f169:	e8 82 07 00 00       	call   0x41f8f0
41f16e:	59                   	pop    %ecx
41f16f:	85 c0                	test   %eax,%eax
41f171:	74 14                	je     0x41f187
41f173:	53                   	push   %ebx
41f174:	6a 02                	push   $0x2
41f176:	53                   	push   %ebx
41f177:	8b 35 40 09 45 00    	mov    0x450940,%esi
41f17d:	8b ce                	mov    %esi,%ecx
41f17f:	ff 15 c4 12 45 00    	call   *0x4512c4
41f185:	ff d6                	call   *%esi
41f187:	a1 d4 11 45 00       	mov    0x4511d4,%eax
41f18c:	8b 30                	mov    (%eax),%esi
41f18e:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f191:	8b 7d e0             	mov    -0x20(%ebp),%edi
41f194:	8a 0e                	mov    (%esi),%cl
41f196:	80 f9 20             	cmp    $0x20,%cl
41f199:	77 4a                	ja     0x41f1e5
41f19b:	84 c9                	test   %cl,%cl
41f19d:	74 15                	je     0x41f1b4
41f19f:	85 ff                	test   %edi,%edi
41f1a1:	75 42                	jne    0x41f1e5
41f1a3:	84 c9                	test   %cl,%cl
41f1a5:	74 0d                	je     0x41f1b4
41f1a7:	80 f9 20             	cmp    $0x20,%cl
41f1aa:	77 08                	ja     0x41f1b4
41f1ac:	46                   	inc    %esi
41f1ad:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f1b0:	8a 0e                	mov    (%esi),%cl
41f1b2:	eb ef                	jmp    0x41f1a3
41f1b4:	f6 45 c4 01          	testb  $0x1,-0x3c(%ebp)
41f1b8:	74 06                	je     0x41f1c0
41f1ba:	0f b7 45 c8          	movzwl -0x38(%ebp),%eax
41f1be:	eb 03                	jmp    0x41f1c3
41f1c0:	6a 0a                	push   $0xa
41f1c2:	58                   	pop    %eax
41f1c3:	50                   	push   %eax
41f1c4:	56                   	push   %esi
41f1c5:	53                   	push   %ebx
41f1c6:	68 00 00 40 00       	push   $0x400000
41f1cb:	e8 60 81 ff ff       	call   0x417330
41f1d0:	a3 a0 05 45 00       	mov    %eax,0x4505a0
41f1d5:	83 3d b8 05 45 00 00 	cmpl   $0x0,0x4505b8
41f1dc:	75 60                	jne    0x41f23e
41f1de:	50                   	push   %eax
41f1df:	ff 15 f8 11 45 00    	call   *0x4511f8
41f1e5:	80 f9 22             	cmp    $0x22,%cl
41f1e8:	75 0c                	jne    0x41f1f6
41f1ea:	33 c0                	xor    %eax,%eax
41f1ec:	85 ff                	test   %edi,%edi
41f1ee:	0f 94 c0             	sete   %al
41f1f1:	8b f8                	mov    %eax,%edi
41f1f3:	89 7d e0             	mov    %edi,-0x20(%ebp)
41f1f6:	0f b6 c1             	movzbl %cl,%eax
41f1f9:	50                   	push   %eax
41f1fa:	ff 15 e0 11 45 00    	call   *0x4511e0
41f200:	59                   	pop    %ecx
41f201:	85 c0                	test   %eax,%eax
41f203:	74 04                	je     0x41f209
41f205:	46                   	inc    %esi
41f206:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f209:	46                   	inc    %esi
41f20a:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f20d:	eb 85                	jmp    0x41f194
41f20f:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41f212:	8b 01                	mov    (%ecx),%eax
41f214:	8b 00                	mov    (%eax),%eax
41f216:	89 45 dc             	mov    %eax,-0x24(%ebp)
41f219:	51                   	push   %ecx
41f21a:	50                   	push   %eax
41f21b:	e8 be 05 00 00       	call   0x41f7de
41f220:	59                   	pop    %ecx
41f221:	59                   	pop    %ecx
41f222:	c3                   	ret
41f223:	8b 65 e8             	mov    -0x18(%ebp),%esp
41f226:	8b 45 dc             	mov    -0x24(%ebp),%eax
41f229:	a3 a0 05 45 00       	mov    %eax,0x4505a0
41f22e:	83 3d b8 05 45 00 00 	cmpl   $0x0,0x4505b8
41f235:	75 07                	jne    0x41f23e
41f237:	50                   	push   %eax
41f238:	ff 15 f0 11 45 00    	call   *0x4511f0
41f23e:	83 3d a4 05 45 00 00 	cmpl   $0x0,0x4505a4
41f245:	75 0b                	jne    0x41f252
41f247:	ff 15 ec 11 45 00    	call   *0x4511ec
41f24d:	a1 a0 05 45 00       	mov    0x4505a0,%eax
41f252:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41f259:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41f25c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41f263:	59                   	pop    %ecx
41f264:	5f                   	pop    %edi
41f265:	5e                   	pop    %esi
41f266:	5b                   	pop    %ebx
41f267:	c9                   	leave
41f268:	c3                   	ret
41f269:	8b ff                	mov    %edi,%edi
41f26b:	55                   	push   %ebp
41f26c:	8b ec                	mov    %esp,%ebp
41f26e:	56                   	push   %esi
41f26f:	8b 75 08             	mov    0x8(%ebp),%esi
41f272:	33 c0                	xor    %eax,%eax
41f274:	3b 75 0c             	cmp    0xc(%ebp),%esi
41f277:	73 1e                	jae    0x41f297
41f279:	57                   	push   %edi
41f27a:	85 c0                	test   %eax,%eax
41f27c:	75 18                	jne    0x41f296
41f27e:	8b 3e                	mov    (%esi),%edi
41f280:	85 ff                	test   %edi,%edi
41f282:	74 0a                	je     0x41f28e
41f284:	8b cf                	mov    %edi,%ecx
41f286:	ff 15 c4 12 45 00    	call   *0x4512c4
41f28c:	ff d7                	call   *%edi
41f28e:	83 c6 04             	add    $0x4,%esi
41f291:	3b 75 0c             	cmp    0xc(%ebp),%esi
41f294:	72 e4                	jb     0x41f27a
41f296:	5f                   	pop    %edi
41f297:	5e                   	pop    %esi
41f298:	5d                   	pop    %ebp
41f299:	c3                   	ret
41f29a:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
41f29f:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
41f2a6:	75 55                	jne    0x41f2fd
41f2a8:	8b 0d 3c 00 40 00    	mov    0x40003c,%ecx
41f2ae:	81 b9 00 00 40 00 50 	cmpl   $0x4550,0x400000(%ecx)
41f2b5:	45 00 00
41f2b8:	75 43                	jne    0x41f2fd
41f2ba:	0f b7 81 18 00 40 00 	movzwl 0x400018(%ecx),%eax
41f2c1:	ba 0b 01 00 00       	mov    $0x10b,%edx
41f2c6:	66 3b c2             	cmp    %dx,%ax
41f2c9:	74 1f                	je     0x41f2ea
41f2cb:	ba 0b 02 00 00       	mov    $0x20b,%edx
41f2d0:	66 3b c2             	cmp    %dx,%ax
41f2d3:	75 28                	jne    0x41f2fd
41f2d5:	83 b9 84 00 40 00 0e 	cmpl   $0xe,0x400084(%ecx)
41f2dc:	76 1f                	jbe    0x41f2fd
41f2de:	33 c0                	xor    %eax,%eax
41f2e0:	39 81 f8 00 40 00    	cmp    %eax,0x4000f8(%ecx)
41f2e6:	0f 95 c0             	setne  %al
41f2e9:	c3                   	ret
41f2ea:	83 b9 74 00 40 00 0e 	cmpl   $0xe,0x400074(%ecx)
41f2f1:	76 0a                	jbe    0x41f2fd
41f2f3:	33 c0                	xor    %eax,%eax
41f2f5:	39 81 e8 00 40 00    	cmp    %eax,0x4000e8(%ecx)
41f2fb:	eb e9                	jmp    0x41f2e6
41f2fd:	33 c0                	xor    %eax,%eax
41f2ff:	c3                   	ret
41f300:	ff 25 44 12 45 00    	jmp    *0x451244
41f306:	cc                   	int3
41f307:	cc                   	int3
41f308:	cc                   	int3
41f309:	cc                   	int3
41f30a:	cc                   	int3
41f30b:	cc                   	int3
41f30c:	cc                   	int3
41f30d:	cc                   	int3
41f30e:	cc                   	int3
41f30f:	cc                   	int3
41f310:	3b 0d 54 02 45 00    	cmp    0x450254,%ecx
41f316:	75 03                	jne    0x41f31b
41f318:	c2 00 00             	ret    $0x0
41f31b:	e9 20 01 00 00       	jmp    0x41f440
41f320:	ff 25 34 12 45 00    	jmp    *0x451234
41f326:	cc                   	int3
41f327:	cc                   	int3
41f328:	cc                   	int3