41f0fd:	85 c0                	test   %eax,%eax
41f0ff:	74 07                	je     0x41f108
41f101:	8b d3                	mov    %ebx,%edx
41f103:	e8 b8 01 00 00       	call   0x41f2c0
41f108:	89 73 10             	mov    %esi,0x10(%ebx)
41f10b:	85 f6                	test   %esi,%esi
41f10d:	74 09                	je     0x41f118
41f10f:	8b d3                	mov    %ebx,%edx
41f111:	8b c6                	mov    %esi,%eax
41f113:	e8 9c 01 00 00       	call   0x41f2b4
41f118:	5e                   	pop    %esi
41f119:	5b                   	pop    %ebx
41f11a:	c3                   	ret
41f11b:	90                   	nop
41f11c:	b0 01                	mov    $0x1,%al
41f11e:	c3                   	ret
41f11f:	90                   	nop
41f120:	55                   	push   %ebp
41f121:	8b ec                	mov    %esp,%ebp
41f123:	5d                   	pop    %ebp
41f124:	c2 08 00             	ret    $0x8
41f127:	90                   	nop
41f128:	8b 40 10             	mov    0x10(%eax),%eax
41f12b:	8b 10                	mov    (%eax),%edx
41f12d:	ff 52 44             	call   *0x44(%edx)
41f130:	c3                   	ret
41f131:	8d 40 00             	lea    0x0(%eax),%eax
41f134:	53                   	push   %ebx
41f135:	56                   	push   %esi
41f136:	84 d2                	test   %dl,%dl
41f138:	74 08                	je     0x41f142
41f13a:	83 c4 f0             	add    $0xfffffff0,%esp
41f13d:	e8 fe 4a fe ff       	call   0x403c40
41f142:	8b da                	mov    %edx,%ebx
41f144:	8b f0                	mov    %eax,%esi
41f146:	33 d2                	xor    %edx,%edx
41f148:	8b c6                	mov    %esi,%eax
41f14a:	e8 c1 f6 ff ff       	call   0x41e810
41f14f:	b2 01                	mov    $0x1,%dl
41f151:	a1 a0 5c 41 00       	mov    0x415ca0,%eax
41f156:	e8 91 47 fe ff       	call   0x4038ec
41f15b:	89 46 50             	mov    %eax,0x50(%esi)
41f15e:	8b c6                	mov    %esi,%eax
41f160:	84 db                	test   %bl,%bl
41f162:	74 0f                	je     0x41f173
41f164:	e8 2f 4b fe ff       	call   0x403c98
41f169:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41f170:	83 c4 0c             	add    $0xc,%esp
41f173:	8b c6                	mov    %esi,%eax
41f175:	5e                   	pop    %esi
41f176:	5b                   	pop    %ebx
41f177:	c3                   	ret
41f178:	53                   	push   %ebx
41f179:	56                   	push   %esi
41f17a:	57                   	push   %edi
41f17b:	e8 68 4b fe ff       	call   0x403ce8
41f180:	8b da                	mov    %edx,%ebx
41f182:	8b f8                	mov    %eax,%edi
41f184:	8b d3                	mov    %ebx,%edx
41f186:	80 e2 fc             	and    $0xfc,%dl
41f189:	8b c7                	mov    %edi,%eax
41f18b:	e8 cc f6 ff ff       	call   0x41e85c
41f190:	8b 47 30             	mov    0x30(%edi),%eax
41f193:	85 c0                	test   %eax,%eax
41f195:	74 07                	je     0x41f19e
41f197:	8b d7                	mov    %edi,%edx
41f199:	e8 86 f9 ff ff       	call   0x41eb24
41f19e:	83 7f 50 00          	cmpl   $0x0,0x50(%edi)
41f1a2:	74 1b                	je     0x41f1bf
41f1a4:	eb 10                	jmp    0x41f1b6
41f1a6:	8b c6                	mov    %esi,%eax
41f1a8:	e8 13 91 ff ff       	call   0x4182c0
41f1ad:	8b d0                	mov    %eax,%edx
41f1af:	8b c7                	mov    %edi,%eax
41f1b1:	e8 0a 01 00 00       	call   0x41f2c0
41f1b6:	8b 77 50             	mov    0x50(%edi),%esi
41f1b9:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
41f1bd:	7f e7                	jg     0x41f1a6
41f1bf:	8d 47 50             	lea    0x50(%edi),%eax
41f1c2:	e8 61 ef fe ff       	call   0x40e128
41f1c7:	84 db                	test   %bl,%bl
41f1c9:	7e 07                	jle    0x41f1d2
41f1cb:	8b c7                	mov    %edi,%eax
41f1cd:	e8 be 4a fe ff       	call   0x403c90
41f1d2:	5f                   	pop    %edi
41f1d3:	5e                   	pop    %esi
41f1d4:	5b                   	pop    %ebx
41f1d5:	c3                   	ret
41f1d6:	8b c0                	mov    %eax,%eax
41f1d8:	33 c0                	xor    %eax,%eax
41f1da:	c3                   	ret
41f1db:	90                   	nop
41f1dc:	c3                   	ret
41f1dd:	8d 40 00             	lea    0x0(%eax),%eax
41f1e0:	53                   	push   %ebx
41f1e1:	56                   	push   %esi
41f1e2:	57                   	push   %edi
41f1e3:	8b d9                	mov    %ecx,%ebx
41f1e5:	8b f2                	mov    %edx,%esi
41f1e7:	8b f8                	mov    %eax,%edi
41f1e9:	8b cb                	mov    %ebx,%ecx
41f1eb:	8b d6                	mov    %esi,%edx
41f1ed:	8b c7                	mov    %edi,%eax
41f1ef:	e8 4c f9 ff ff       	call   0x41eb40
41f1f4:	80 fb 01             	cmp    $0x1,%bl
41f1f7:	75 0a                	jne    0x41f203
41f1f9:	3b 77 30             	cmp    0x30(%edi),%esi
41f1fc:	75 05                	jne    0x41f203
41f1fe:	33 c0                	xor    %eax,%eax
41f200:	89 47 30             	mov    %eax,0x30(%edi)
41f203:	5f                   	pop    %edi
41f204:	5e                   	pop    %esi
41f205:	5b                   	pop    %ebx
41f206:	c3                   	ret
41f207:	90                   	nop
41f208:	c3                   	ret
41f209:	8d 40 00             	lea    0x0(%eax),%eax
41f20c:	53                   	push   %ebx
41f20d:	66 83 78 42 00       	cmpw   $0x0,0x42(%eax)
41f212:	74 0e                	je     0x41f222
41f214:	8b d8                	mov    %eax,%ebx
41f216:	8b d0                	mov    %eax,%edx
41f218:	8b 43 44             	mov    0x44(%ebx),%eax
41f21b:	ff 53 40             	call   *0x40(%ebx)
41f21e:	b0 01                	mov    $0x1,%al
41f220:	5b                   	pop    %ebx
41f221:	c3                   	ret
41f222:	33 c0                	xor    %eax,%eax
41f224:	5b                   	pop    %ebx
41f225:	c3                   	ret
41f226:	8b c0                	mov    %eax,%eax
41f228:	53                   	push   %ebx
41f229:	66 83 78 4a 00       	cmpw   $0x0,0x4a(%eax)
41f22e:	74 0e                	je     0x41f23e
41f230:	8b d8                	mov    %eax,%ebx
41f232:	8b d0                	mov    %eax,%edx
41f234:	8b 43 4c             	mov    0x4c(%ebx),%eax
41f237:	ff 53 48             	call   *0x48(%ebx)
41f23a:	b0 01                	mov    $0x1,%al
41f23c:	5b                   	pop    %ebx
41f23d:	c3                   	ret
41f23e:	33 c0                	xor    %eax,%eax
41f240:	5b                   	pop    %ebx
41f241:	c3                   	ret
41f242:	8b c0                	mov    %eax,%eax
41f244:	55                   	push   %ebp
41f245:	8b ec                	mov    %esp,%ebp
41f247:	53                   	push   %ebx
41f248:	56                   	push   %esi
41f249:	57                   	push   %edi
41f24a:	8b d8                	mov    %eax,%ebx
41f24c:	8b 45 08             	mov    0x8(%ebp),%eax
41f24f:	3b 43 40             	cmp    0x40(%ebx),%eax
41f252:	75 08                	jne    0x41f25c
41f254:	8b 45 0c             	mov    0xc(%ebp),%eax
41f257:	3b 43 44             	cmp    0x44(%ebx),%eax
41f25a:	74 3a                	je     0x41f296
41f25c:	8b 43 50             	mov    0x50(%ebx),%eax
41f25f:	8b 70 08             	mov    0x8(%eax),%esi
41f262:	4e                   	dec    %esi
41f263:	85 f6                	test   %esi,%esi
41f265:	7c 1c                	jl     0x41f283
41f267:	46                   	inc    %esi
41f268:	33 ff                	xor    %edi,%edi
41f26a:	ff 75 0c             	push   0xc(%ebp)
41f26d:	ff 75 08             	push   0x8(%ebp)
41f270:	8b d7                	mov    %edi,%edx
41f272:	8b 43 50             	mov    0x50(%ebx),%eax
41f275:	e8 5e 8f ff ff       	call   0x4181d8
41f27a:	8b 10                	mov    (%eax),%edx
41f27c:	ff 52 10             	call   *0x10(%edx)
41f27f:	47                   	inc    %edi
41f280:	4e                   	dec    %esi
41f281:	75 e7                	jne    0x41f26a
41f283:	8b 45 08             	mov    0x8(%ebp),%eax
41f286:	89 43 40             	mov    %eax,0x40(%ebx)
41f289:	8b 45 0c             	mov    0xc(%ebp),%eax
41f28c:	89 43 44             	mov    %eax,0x44(%ebx)
41f28f:	8b c3                	mov    %ebx,%eax
41f291:	8b 10                	mov    (%eax),%edx
41f293:	ff 52 30             	call   *0x30(%edx)
41f296:	5f                   	pop    %edi
41f297:	5e                   	pop    %esi
41f298:	5b                   	pop    %ebx
41f299:	5d                   	pop    %ebp
41f29a:	c2 08 00             	ret    $0x8
41f29d:	8d 40 00             	lea    0x0(%eax),%eax
41f2a0:	53                   	push   %ebx
41f2a1:	66 83 78 3a 00       	cmpw   $0x0,0x3a(%eax)
41f2a6:	74 0a                	je     0x41f2b2
41f2a8:	8b d8                	mov    %eax,%ebx
41f2aa:	8b d0                	mov    %eax,%edx
41f2ac:	8b 43 3c             	mov    0x3c(%ebx),%eax
41f2af:	ff 53 38             	call   *0x38(%ebx)
41f2b2:	5b                   	pop    %ebx
41f2b3:	c3                   	ret
41f2b4:	89 42 10             	mov    %eax,0x10(%edx)
41f2b7:	8b 40 50             	mov    0x50(%eax),%eax
41f2ba:	e8 b9 8d ff ff       	call   0x418078
41f2bf:	c3                   	ret
41f2c0:	53                   	push   %ebx
41f2c1:	56                   	push   %esi
41f2c2:	57                   	push   %edi
41f2c3:	55                   	push   %ebp
41f2c4:	8b ea                	mov    %edx,%ebp
41f2c6:	8b f8                	mov    %eax,%edi
41f2c8:	8b 47 50             	mov    0x50(%edi),%eax
41f2cb:	8b 70 08             	mov    0x8(%eax),%esi
41f2ce:	4e                   	dec    %esi
41f2cf:	85 f6                	test   %esi,%esi
41f2d1:	7c 26                	jl     0x41f2f9
41f2d3:	46                   	inc    %esi
41f2d4:	33 db                	xor    %ebx,%ebx
41f2d6:	8b 47 50             	mov    0x50(%edi),%eax
41f2d9:	8b d3                	mov    %ebx,%edx
41f2db:	e8 f8 8e ff ff       	call   0x4181d8
41f2e0:	3b e8                	cmp    %eax,%ebp
41f2e2:	75 11                	jne    0x41f2f5
41f2e4:	33 c0                	xor    %eax,%eax
41f2e6:	89 45 10             	mov    %eax,0x10(%ebp)
41f2e9:	8b 47 50             	mov    0x50(%edi),%eax
41f2ec:	8b d3                	mov    %ebx,%edx
41f2ee:	e8 d1 8d ff ff       	call   0x4180c4
41f2f3:	eb 04                	jmp    0x41f2f9
41f2f5:	43                   	inc    %ebx
41f2f6:	4e                   	dec    %esi
41f2f7:	75 dd                	jne    0x41f2d6
41f2f9:	5d                   	pop    %ebp
41f2fa:	5f                   	pop    %edi
41f2fb:	5e                   	pop    %esi
41f2fc:	5b                   	pop    %ebx
41f2fd:	c3                   	ret
41f2fe:	8b c0                	mov    %eax,%eax
41f300:	53                   	push   %ebx
41f301:	56                   	push   %esi
41f302:	8b f2                	mov    %edx,%esi
41f304:	8b d8                	mov    %eax,%ebx
41f306:	8b 43 30             	mov    0x30(%ebx),%eax
41f309:	3b f0                	cmp    %eax,%esi
41f30b:	74 1b                	je     0x41f328
41f30d:	85 c0                	test   %eax,%eax
41f30f:	74 07                	je     0x41f318
41f311:	8b d3                	mov    %ebx,%edx
41f313:	e8 0c f8 ff ff       	call   0x41eb24
41f318:	8b c6                	mov    %esi,%eax
41f31a:	89 43 30             	mov    %eax,0x30(%ebx)
41f31d:	85 c0                	test   %eax,%eax
41f31f:	74 07                	je     0x41f328
41f321:	8b d3                	mov    %ebx,%edx
41f323:	e8 bc f5 ff ff       	call   0x41e8e4
41f328:	5e                   	pop    %esi
41f329:	5b                   	pop    %ebx
41f32a:	c3                   	ret
41f32b:	90                   	nop
41f32c:	55                   	push   %ebp
41f32d:	8b ec                	mov    %esp,%ebp
41f32f:	53                   	push   %ebx
41f330:	56                   	push   %esi
41f331:	57                   	push   %edi
41f332:	84 d2                	test   %dl,%dl
41f334:	74 08                	je     0x41f33e
41f336:	83 c4 f0             	add    $0xfffffff0,%esp
41f339:	e8 02 49 fe ff       	call   0x403c40
41f33e:	8b f1                	mov    %ecx,%esi
41f340:	8b da                	mov    %edx,%ebx
41f342:	8b f8                	mov    %eax,%edi
41f344:	33 d2                	xor    %edx,%edx
41f346:	8b c7                	mov    %edi,%eax
41f348:	e8 9f 45 fe ff       	call   0x4038ec
41f34d:	89 77 0c             	mov    %esi,0xc(%edi)
41f350:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
41f354:	88 47 10             	mov    %al,0x10(%edi)
41f357:	8b c7                	mov    %edi,%eax
41f359:	84 db                	test   %bl,%bl
41f35b:	74 0f                	je     0x41f36c
41f35d:	e8 36 49 fe ff       	call   0x403c98
41f362:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41f369:	83 c4 0c             	add    $0xc,%esp
41f36c:	8b c7                	mov    %edi,%eax
41f36e:	5f                   	pop    %edi
41f36f:	5e                   	pop    %esi
41f370:	5b                   	pop    %ebx
41f371:	5d                   	pop    %ebp
41f372:	c2 04 00             	ret    $0x4
41f375:	8d 40 00             	lea    0x0(%eax),%eax
41f378:	53                   	push   %ebx
41f379:	56                   	push   %esi
41f37a:	e8 69 49 fe ff       	call   0x403ce8
41f37f:	8b da                	mov    %edx,%ebx
41f381:	8b f0                	mov    %eax,%esi
41f383:	80 7e 10 01          	cmpb   $0x1,0x10(%esi)
41f387:	75 0d                	jne    0x41f396
41f389:	8b 46 0c             	mov    0xc(%esi),%eax
41f38c:	e8 8b 45 fe ff       	call   0x40391c
41f391:	33 c0                	xor    %eax,%eax
41f393:	89 46 0c             	mov    %eax,0xc(%esi)
41f396:	8b d3                	mov    %ebx,%edx
41f398:	80 e2 fc             	and    $0xfc,%dl
41f39b:	8b c6                	mov    %esi,%eax
41f39d:	e8 6a 45 fe ff       	call   0x40390c
41f3a2:	84 db                	test   %bl,%bl
41f3a4:	7e 07                	jle    0x41f3ad
41f3a6:	8b c6                	mov    %esi,%eax
41f3a8:	e8 e3 48 fe ff       	call   0x403c90
41f3ad:	5e                   	pop    %esi
41f3ae:	5b                   	pop    %ebx
41f3af:	c3                   	ret
41f3b0:	55                   	push   %ebp
41f3b1:	8b ec                	mov    %esp,%ebp
41f3b3:	53                   	push   %ebx
41f3b4:	56                   	push   %esi
41f3b5:	57                   	push   %edi
41f3b6:	8b 55 0c             	mov    0xc(%ebp),%edx
41f3b9:	8b 45 08             	mov    0x8(%ebp),%eax
41f3bc:	33 c9                	xor    %ecx,%ecx
41f3be:	55                   	push   %ebp
41f3bf:	68 ff f3 41 00       	push   $0x41f3ff
41f3c4:	64 ff 31             	push   %fs:(%ecx)
41f3c7:	64 89 21             	mov    %esp,%fs:(%ecx)
41f3ca:	85 d2                	test   %edx,%edx
41f3cc:	75 0f                	jne    0x41f3dd
41f3ce:	bb 09 00 03 80       	mov    $0x80030009,%ebx
41f3d3:	33 c0                	xor    %eax,%eax
41f3d5:	5a                   	pop    %edx
41f3d6:	59                   	pop    %ecx
41f3d7:	59                   	pop    %ecx
41f3d8:	64 89 10             	mov    %edx,%fs:(%eax)
41f3db:	eb 31                	jmp    0x41f40e
41f3dd:	8b 40 0c             	mov    0xc(%eax),%eax
41f3e0:	8b 4d 10             	mov    0x10(%ebp),%ecx
41f3e3:	8b 18                	mov    (%eax),%ebx
41f3e5:	ff 53 0c             	call   *0xc(%ebx)
41f3e8:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
41f3ec:	74 05                	je     0x41f3f3
41f3ee:	8b 55 14             	mov    0x14(%ebp),%edx
41f3f1:	89 02                	mov    %eax,(%edx)
41f3f3:	33 db                	xor    %ebx,%ebx
41f3f5:	33 c0                	xor    %eax,%eax
41f3f7:	5a                   	pop    %edx
41f3f8:	59                   	pop    %ecx
41f3f9:	59                   	pop    %ecx
41f3fa:	64 89 10             	mov    %edx,%fs:(%eax)
41f3fd:	eb 0f                	jmp    0x41f40e
41f3ff:	e9 f8 49 fe ff       	jmp    0x403dfc
41f404:	bb 01 00 00 00       	mov    $0x1,%ebx
41f409:	e8 fe 4d fe ff       	call   0x40420c
41f40e:	8b c3                	mov    %ebx,%eax
41f410:	5f                   	pop    %edi
41f411:	5e                   	pop    %esi
41f412:	5b                   	pop    %ebx