41ef7b:	83 c4 f4             	add    $0xfffffff4,%esp
41ef7e:	53                   	push   %ebx
41ef7f:	56                   	push   %esi
41ef80:	57                   	push   %edi
41ef81:	8b f2                	mov    %edx,%esi
41ef83:	8b d8                	mov    %eax,%ebx
41ef85:	85 f6                	test   %esi,%esi
41ef87:	74 14                	je     0x41ef9d
41ef89:	8b c3                	mov    %ebx,%eax
41ef8b:	e8 b0 47 fe ff       	call   0x403740
41ef90:	8b f8                	mov    %eax,%edi
41ef92:	8b c6                	mov    %esi,%eax
41ef94:	e8 a7 47 fe ff       	call   0x403740
41ef99:	3b f8                	cmp    %eax,%edi
41ef9b:	74 04                	je     0x41efa1
41ef9d:	33 c0                	xor    %eax,%eax
41ef9f:	eb 02                	jmp    0x41efa3
41efa1:	b0 01                	mov    $0x1,%al
41efa3:	88 45 ff             	mov    %al,-0x1(%ebp)
41efa6:	8b c3                	mov    %ebx,%eax
41efa8:	8b 10                	mov    (%eax),%edx
41efaa:	ff 52 1c             	call   *0x1c(%edx)
41efad:	84 c0                	test   %al,%al
41efaf:	75 0b                	jne    0x41efbc
41efb1:	8b c6                	mov    %esi,%eax
41efb3:	8b 10                	mov    (%eax),%edx
41efb5:	ff 52 1c             	call   *0x1c(%edx)
41efb8:	84 c0                	test   %al,%al
41efba:	74 24                	je     0x41efe0
41efbc:	8b c3                	mov    %ebx,%eax
41efbe:	8b 10                	mov    (%eax),%edx
41efc0:	ff 52 1c             	call   *0x1c(%edx)
41efc3:	84 c0                	test   %al,%al
41efc5:	74 0b                	je     0x41efd2
41efc7:	8b c6                	mov    %esi,%eax
41efc9:	8b 10                	mov    (%eax),%edx
41efcb:	ff 52 1c             	call   *0x1c(%edx)
41efce:	84 c0                	test   %al,%al
41efd0:	75 04                	jne    0x41efd6
41efd2:	33 c0                	xor    %eax,%eax
41efd4:	eb 02                	jmp    0x41efd8
41efd6:	b0 01                	mov    $0x1,%al
41efd8:	88 45 ff             	mov    %al,-0x1(%ebp)
41efdb:	e9 d6 00 00 00       	jmp    0x41f0b6
41efe0:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
41efe4:	0f 84 cc 00 00 00    	je     0x41f0b6
41efea:	b2 01                	mov    $0x1,%dl
41efec:	a1 78 23 41 00       	mov    0x412378,%eax
41eff1:	e8 d6 47 fe ff       	call   0x4037cc
41eff6:	89 45 f8             	mov    %eax,-0x8(%ebp)
41eff9:	33 c0                	xor    %eax,%eax
41effb:	55                   	push   %ebp
41effc:	68 af f0 41 00       	push   $0x41f0af
41f001:	64 ff 30             	push   %fs:(%eax)
41f004:	64 89 20             	mov    %esp,%fs:(%eax)
41f007:	8b 55 f8             	mov    -0x8(%ebp),%edx
41f00a:	8b c3                	mov    %ebx,%eax
41f00c:	8b 08                	mov    (%eax),%ecx
41f00e:	ff 51 44             	call   *0x44(%ecx)
41f011:	b2 01                	mov    $0x1,%dl
41f013:	a1 78 23 41 00       	mov    0x412378,%eax
41f018:	e8 af 47 fe ff       	call   0x4037cc
41f01d:	89 45 f4             	mov    %eax,-0xc(%ebp)
41f020:	33 c0                	xor    %eax,%eax
41f022:	55                   	push   %ebp
41f023:	68 92 f0 41 00       	push   $0x41f092
41f028:	64 ff 30             	push   %fs:(%eax)
41f02b:	64 89 20             	mov    %esp,%fs:(%eax)
41f02e:	8b 55 f4             	mov    -0xc(%ebp),%edx
41f031:	8b c6                	mov    %esi,%eax
41f033:	8b 08                	mov    (%eax),%ecx
41f035:	ff 51 44             	call   *0x44(%ecx)
41f038:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f03b:	8b 10                	mov    (%eax),%edx
41f03d:	ff 12                	call   *(%edx)
41f03f:	52                   	push   %edx
41f040:	50                   	push   %eax
41f041:	8b 45 f4             	mov    -0xc(%ebp),%eax
41f044:	8b 10                	mov    (%eax),%edx
41f046:	ff 12                	call   *(%edx)
41f048:	3b 54 24 04          	cmp    0x4(%esp),%edx
41f04c:	75 03                	jne    0x41f051
41f04e:	3b 04 24             	cmp    (%esp),%eax
41f051:	5a                   	pop    %edx
41f052:	58                   	pop    %eax
41f053:	75 1e                	jne    0x41f073
41f055:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f058:	8b 10                	mov    (%eax),%edx
41f05a:	ff 12                	call   *(%edx)
41f05c:	8b c8                	mov    %eax,%ecx
41f05e:	8b 45 f4             	mov    -0xc(%ebp),%eax
41f061:	8b 50 04             	mov    0x4(%eax),%edx
41f064:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f067:	8b 40 04             	mov    0x4(%eax),%eax
41f06a:	e8 8d 91 fe ff       	call   0x4081fc
41f06f:	84 c0                	test   %al,%al
41f071:	75 04                	jne    0x41f077
41f073:	33 c0                	xor    %eax,%eax
41f075:	eb 02                	jmp    0x41f079
41f077:	b0 01                	mov    $0x1,%al
41f079:	88 45 ff             	mov    %al,-0x1(%ebp)
41f07c:	33 c0                	xor    %eax,%eax
41f07e:	5a                   	pop    %edx
41f07f:	59                   	pop    %ecx
41f080:	59                   	pop    %ecx
41f081:	64 89 10             	mov    %edx,%fs:(%eax)
41f084:	68 99 f0 41 00       	push   $0x41f099
41f089:	8b 45 f4             	mov    -0xc(%ebp),%eax
41f08c:	e8 6b 47 fe ff       	call   0x4037fc
41f091:	c3                   	ret
41f092:	e9 b5 4e fe ff       	jmp    0x403f4c
41f097:	eb f0                	jmp    0x41f089
41f099:	33 c0                	xor    %eax,%eax
41f09b:	5a                   	pop    %edx
41f09c:	59                   	pop    %ecx
41f09d:	59                   	pop    %ecx
41f09e:	64 89 10             	mov    %edx,%fs:(%eax)
41f0a1:	68 b6 f0 41 00       	push   $0x41f0b6
41f0a6:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f0a9:	e8 4e 47 fe ff       	call   0x4037fc
41f0ae:	c3                   	ret
41f0af:	e9 98 4e fe ff       	jmp    0x403f4c
41f0b4:	eb f0                	jmp    0x41f0a6
41f0b6:	8a 45 ff             	mov    -0x1(%ebp),%al
41f0b9:	5f                   	pop    %edi
41f0ba:	5e                   	pop    %esi
41f0bb:	5b                   	pop    %ebx
41f0bc:	8b e5                	mov    %ebp,%esp
41f0be:	5d                   	pop    %ebp
41f0bf:	c3                   	ret
41f0c0:	33 c0                	xor    %eax,%eax
41f0c2:	c3                   	ret
41f0c3:	90                   	nop
41f0c4:	8a 40 21             	mov    0x21(%eax),%al
41f0c7:	c3                   	ret
41f0c8:	55                   	push   %ebp
41f0c9:	8b ec                	mov    %esp,%ebp
41f0cb:	51                   	push   %ecx
41f0cc:	56                   	push   %esi
41f0cd:	8b f0                	mov    %eax,%esi
41f0cf:	6a 20                	push   $0x20
41f0d1:	8b ca                	mov    %edx,%ecx
41f0d3:	a1 88 22 41 00       	mov    0x412288,%eax
41f0d8:	b2 01                	mov    $0x1,%dl
41f0da:	e8 7d 70 ff ff       	call   0x41615c
41f0df:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f0e2:	33 c0                	xor    %eax,%eax
41f0e4:	55                   	push   %ebp
41f0e5:	68 10 f1 41 00       	push   $0x41f110
41f0ea:	64 ff 30             	push   %fs:(%eax)
41f0ed:	64 89 20             	mov    %esp,%fs:(%eax)
41f0f0:	8b 55 fc             	mov    -0x4(%ebp),%edx
41f0f3:	8b c6                	mov    %esi,%eax
41f0f5:	8b 08                	mov    (%eax),%ecx
41f0f7:	ff 51 54             	call   *0x54(%ecx)
41f0fa:	33 c0                	xor    %eax,%eax
41f0fc:	5a                   	pop    %edx
41f0fd:	59                   	pop    %ecx
41f0fe:	59                   	pop    %ecx
41f0ff:	64 89 10             	mov    %edx,%fs:(%eax)
41f102:	68 17 f1 41 00       	push   $0x41f117
41f107:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f10a:	e8 ed 46 fe ff       	call   0x4037fc
41f10f:	c3                   	ret
41f110:	e9 37 4e fe ff       	jmp    0x403f4c
41f115:	eb f0                	jmp    0x41f107
41f117:	5e                   	pop    %esi
41f118:	59                   	pop    %ecx
41f119:	5d                   	pop    %ebp
41f11a:	c3                   	ret
41f11b:	90                   	nop
41f11c:	55                   	push   %ebp
41f11d:	8b ec                	mov    %esp,%ebp
41f11f:	53                   	push   %ebx
41f120:	66 83 78 1a 00       	cmpw   $0x0,0x1a(%eax)
41f125:	74 18                	je     0x41f13f
41f127:	8a 5d 14             	mov    0x14(%ebp),%bl
41f12a:	53                   	push   %ebx
41f12b:	8a 5d 10             	mov    0x10(%ebp),%bl
41f12e:	53                   	push   %ebx
41f12f:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41f132:	53                   	push   %ebx
41f133:	8b 5d 08             	mov    0x8(%ebp),%ebx
41f136:	53                   	push   %ebx
41f137:	8b d8                	mov    %eax,%ebx
41f139:	8b 43 1c             	mov    0x1c(%ebx),%eax
41f13c:	ff 53 18             	call   *0x18(%ebx)
41f13f:	5b                   	pop    %ebx
41f140:	5d                   	pop    %ebp
41f141:	c2 10 00             	ret    $0x10
41f144:	56                   	push   %esi
41f145:	8b f0                	mov    %eax,%esi
41f147:	8b c6                	mov    %esi,%eax
41f149:	8b 08                	mov    (%eax),%ecx
41f14b:	ff 51 54             	call   *0x54(%ecx)
41f14e:	5e                   	pop    %esi
41f14f:	c3                   	ret
41f150:	55                   	push   %ebp
41f151:	8b ec                	mov    %esp,%ebp
41f153:	51                   	push   %ecx
41f154:	56                   	push   %esi
41f155:	8b f0                	mov    %eax,%esi
41f157:	68 ff ff 00 00       	push   $0xffff
41f15c:	8b ca                	mov    %edx,%ecx
41f15e:	a1 88 22 41 00       	mov    0x412288,%eax
41f163:	b2 01                	mov    $0x1,%dl
41f165:	e8 f2 6f ff ff       	call   0x41615c
41f16a:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f16d:	33 c0                	xor    %eax,%eax
41f16f:	55                   	push   %ebp
41f170:	68 9b f1 41 00       	push   $0x41f19b
41f175:	64 ff 30             	push   %fs:(%eax)
41f178:	64 89 20             	mov    %esp,%fs:(%eax)
41f17b:	8b 55 fc             	mov    -0x4(%ebp),%edx
41f17e:	8b c6                	mov    %esi,%eax
41f180:	8b 08                	mov    (%eax),%ecx
41f182:	ff 51 58             	call   *0x58(%ecx)
41f185:	33 c0                	xor    %eax,%eax
41f187:	5a                   	pop    %edx
41f188:	59                   	pop    %ecx
41f189:	59                   	pop    %ecx
41f18a:	64 89 10             	mov    %edx,%fs:(%eax)
41f18d:	68 a2 f1 41 00       	push   $0x41f1a2
41f192:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f195:	e8 62 46 fe ff       	call   0x4037fc
41f19a:	c3                   	ret
41f19b:	e9 ac 4d fe ff       	jmp    0x403f4c
41f1a0:	eb f0                	jmp    0x41f192
41f1a2:	5e                   	pop    %esi
41f1a3:	59                   	pop    %ecx
41f1a4:	5d                   	pop    %ebp
41f1a5:	c3                   	ret
41f1a6:	8b c0                	mov    %eax,%eax
41f1a8:	c3                   	ret
41f1a9:	8d 40 00             	lea    0x0(%eax),%eax
41f1ac:	3a 50 21             	cmp    0x21(%eax),%dl
41f1af:	74 0a                	je     0x41f1bb
41f1b1:	88 50 21             	mov    %dl,0x21(%eax)
41f1b4:	8b d0                	mov    %eax,%edx
41f1b6:	8b 08                	mov    (%eax),%ecx
41f1b8:	ff 51 10             	call   *0x10(%ecx)
41f1bb:	c3                   	ret
41f1bc:	56                   	push   %esi
41f1bd:	8b f0                	mov    %eax,%esi
41f1bf:	8b c6                	mov    %esi,%eax
41f1c1:	8b 08                	mov    (%eax),%ecx
41f1c3:	ff 51 58             	call   *0x58(%ecx)
41f1c6:	5e                   	pop    %esi
41f1c7:	c3                   	ret
41f1c8:	14 f2                	adc    $0xf2,%al
41f1ca:	41                   	inc    %ecx
41f1d7:	00 40 f2             	add    %al,-0xe(%eax)
41f1da:	41                   	inc    %ecx
41f1e7:	00 2c f2             	add    %ch,(%edx,%esi,8)
41f1ea:	41                   	inc    %ecx
41f1eb:	00 64 00 00          	add    %ah,0x0(%eax,%eax,1)
41f1ef:	00 bc b7 41 00 40 3a 	add    %bh,0x3a400041(%edi,%esi,4)
41f1f6:	40                   	inc    %eax
41f1f7:	00 4c 3a 40          	add    %cl,0x40(%edx,%edi,1)
41f1fb:	00 50 3a             	add    %dl,0x3a(%eax)
41f1fe:	40                   	inc    %eax
41f1ff:	00 54 3a 40          	add    %dl,0x40(%edx,%edi,1)
41f203:	00 48 3a             	add    %cl,0x3a(%eax)
41f206:	40                   	inc    %eax
41f207:	00 94 37 40 00 b0 37 	add    %dl,0x37b00040(%edi,%esi,1)
41f20e:	40                   	inc    %eax
41f20f:	00 c8                	add    %cl,%al
41f211:	f3 41                	repz inc %ecx
41f213:	00 90 46 41 00 98    	add    %dl,-0x67ffbeba(%eax)
41f219:	46                   	inc    %esi
41f21a:	41                   	inc    %ecx
41f21b:	00 ac 45 41 00 6c da 	add    %ch,-0x2593ffbf(%ebp,%eax,2)
41f222:	41                   	inc    %ecx
41f223:	00 58 da             	add    %bl,-0x26(%eax)
41f226:	41                   	inc    %ecx
41f227:	00 94 f4 41 00 0d 54 	add    %dl,0x540d0041(%esp,%esi,8)
41f22e:	42                   	inc    %edx
41f22f:	69 74 6d 61 70 43 61 	imul   $0x6e614370,0x61(%ebp,%ebp,2),%esi
41f236:	6e
41f237:	76 61                	jbe    0x41f29a
41f239:	73 8b                	jae    0x41f1c6
41f23b:	c0 40 f2 41          	rolb   $0x41,-0xe(%eax)
41f23f:	00 07                	add    %al,(%edi)
41f241:	0d 54 42 69 74       	or     $0x74694254,%eax
41f246:	6d                   	insl   (%dx),%es:(%edi)
41f247:	61                   	popa
41f248:	70 43                	jo     0x41f28d
41f24a:	61                   	popa
41f24b:	6e                   	outsb  %ds:(%esi),(%dx)
41f24c:	76 61                	jbe    0x41f2af
41f24e:	73 14                	jae    0x41f264
41f250:	f2 41                	repnz inc %ecx
41f252:	00 28                	add    %ch,(%eax)
41f254:	b8 41 00 04 00       	mov    $0x40041,%eax
41f259:	08 47 72             	or     %al,0x72(%edi)
41f25c:	61                   	popa
41f25d:	70 68                	jo     0x41f2c7
41f25f:	69 63 73 00 00 55 8b 	imul   $0x8b550000,0x73(%ebx),%esp
41f266:	ec                   	in     (%dx),%al
41f267:	83 c4 f4             	add    $0xfffffff4,%esp
41f26a:	a1 fc 56 45 00       	mov    0x4556fc,%eax
41f26f:	e8 00 51 ff ff       	call   0x414374
41f274:	89 45 f8             	mov    %eax,-0x8(%ebp)
41f277:	33 c0                	xor    %eax,%eax
41f279:	55                   	push   %ebp
41f27a:	68 02 f3 41 00       	push   $0x41f302
41f27f:	64 ff 30             	push   %fs:(%eax)
41f282:	64 89 20             	mov    %esp,%fs:(%eax)
41f285:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f288:	8b 40 08             	mov    0x8(%eax),%eax
41f28b:	48                   	dec    %eax
41f28c:	83 f8 00             	cmp    $0x0,%eax
41f28f:	7c 59                	jl     0x41f2ea
41f291:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f294:	8b 55 fc             	mov    -0x4(%ebp),%edx
41f297:	8b 45 f8             	mov    -0x8(%ebp),%eax
41f29a:	e8 49 4d ff ff       	call   0x413fe8
41f29f:	89 45 f4             	mov    %eax,-0xc(%ebp)
41f2a2:	8b 45 f4             	mov    -0xc(%ebp),%eax
41f2a5:	e8 02 e5 ff ff       	call   0x41d7ac
41f2aa:	84 c0                	test   %al,%al
41f2ac:	74 33                	je     0x41f2e1
41f2ae:	33 c0                	xor    %eax,%eax
41f2b0:	55                   	push   %ebp
41f2b1:	68 da f2 41 00       	push   $0x41f2da
41f2b6:	64 ff 30             	push   %fs:(%eax)
41f2b9:	64 89 20             	mov    %esp,%fs:(%eax)
41f2bc:	8b 45 f4             	mov    -0xc(%ebp),%eax
41f2bf:	e8 30 01 00 00       	call   0x41f3f4
41f2c4:	33 c0                	xor    %eax,%eax
41f2c6:	5a                   	pop    %edx
41f2c7:	59                   	pop    %ecx
41f2c8:	59                   	pop    %ecx
41f2c9:	64 89 10             	mov    %edx,%fs:(%eax)
41f2cc:	68 e1 f2 41 00       	push   $0x41f2e1
41f2d1:	8b 45 f4             	mov    -0xc(%ebp),%eax
41f2d4:	e8 2f e5 ff ff       	call   0x41d808
41f2d9:	c3                   	ret
41f2da:	e9 6d 4c fe ff       	jmp    0x403f4c
41f2df:	eb f0                	jmp    0x41f2d1
41f2e1:	ff 4d fc             	decl   -0x4(%ebp)
41f2e4:	83 7d fc ff          	cmpl   $0xffffffff,-0x4(%ebp)
41f2e8:	75 aa                	jne    0x41f294
41f2ea:	33 c0                	xor    %eax,%eax
41f2ec:	5a                   	pop    %edx
41f2ed:	59                   	pop    %ecx
41f2ee:	59                   	pop    %ecx
41f2ef:	64 89 10             	mov    %edx,%fs:(%eax)
41f2f2:	68 09 f3 41 00       	push   $0x41f309
41f2f7:	a1 fc 56 45 00       	mov    0x4556fc,%eax