4a7040:	0f 8f 5a ff ff ff    	jg     0x4a6fa0
4a7046:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a704a:	85 c9                	test   %ecx,%ecx
4a704c:	75 41                	jne    0x4a708f
4a704e:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4a7052:	83 f9 02             	cmp    $0x2,%ecx
4a7055:	7d 09                	jge    0x4a7060
4a7057:	83 fb 28             	cmp    $0x28,%ebx
4a705a:	0f 83 50 01 00 00    	jae    0x4a71b0
4a7060:	85 c0                	test   %eax,%eax
4a7062:	8d 04 89             	lea    (%ecx,%ecx,4),%eax
4a7065:	74 25                	je     0x4a708c
4a7067:	c1 e0 03             	shl    $0x3,%eax
4a706a:	50                   	push   %eax
4a706b:	57                   	push   %edi
4a706c:	e8 6f c7 00 00       	call   0x4b37e0
4a7071:	83 c4 08             	add    $0x8,%esp
4a7074:	85 c0                	test   %eax,%eax
4a7076:	0f 84 5d 01 00 00    	je     0x4a71d9
4a707c:	eb 11                	jmp    0x4a708f
4a707e:	8d 04 9b             	lea    (%ebx,%ebx,4),%eax
4a7081:	8d 1c 45 d0 ff ff ff 	lea    -0x30(,%eax,2),%ebx
4a7088:	03 dd                	add    %ebp,%ebx
4a708a:	eb ae                	jmp    0x4a703a
4a708c:	8d 1c c3             	lea    (%ebx,%eax,8),%ebx
4a708f:	8b 44 24 18          	mov    0x18(%esp),%eax
4a7093:	33 f6                	xor    %esi,%esi
4a7095:	85 c0                	test   %eax,%eax
4a7097:	0f 84 8a 00 00 00    	je     0x4a7127
4a709d:	57                   	push   %edi
4a709e:	e8 cd c2 00 00       	call   0x4b3370
4a70a3:	83 c4 04             	add    $0x4,%esp
4a70a6:	8d 48 06             	lea    0x6(%eax),%ecx
4a70a9:	b8 93 24 49 92       	mov    $0x92492493,%eax
4a70ae:	f7 e9                	imul   %ecx
4a70b0:	03 d1                	add    %ecx,%edx
4a70b2:	c1 fa 02             	sar    $0x2,%edx
4a70b5:	8b da                	mov    %edx,%ebx
4a70b7:	c1 eb 1f             	shr    $0x1f,%ebx
4a70ba:	03 da                	add    %edx,%ebx
4a70bc:	3b 5c 24 20          	cmp    0x20(%esp),%ebx
4a70c0:	7e 3b                	jle    0x4a70fd
4a70c2:	8b 44 24 10          	mov    0x10(%esp),%eax
4a70c6:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4a70ca:	3b c1                	cmp    %ecx,%eax
4a70cc:	74 09                	je     0x4a70d7
4a70ce:	50                   	push   %eax
4a70cf:	e8 5c 90 ff ff       	call   0x4a0130
4a70d4:	83 c4 04             	add    $0x4,%esp
4a70d7:	68 ad 00 00 00       	push   $0xad
4a70dc:	8d 43 20             	lea    0x20(%ebx),%eax
4a70df:	68 d4 8c 69 00       	push   $0x698cd4
4a70e4:	50                   	push   %eax
4a70e5:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4a70e9:	e8 c2 90 ff ff       	call   0x4a01b0
4a70ee:	83 c4 0c             	add    $0xc,%esp
4a70f1:	89 44 24 10          	mov    %eax,0x10(%esp)
4a70f5:	85 c0                	test   %eax,%eax
4a70f7:	0f 84 e0 00 00 00    	je     0x4a71dd
4a70fd:	85 db                	test   %ebx,%ebx
4a70ff:	74 40                	je     0x4a7141
4a7101:	68 80 00 00 00       	push   $0x80
4a7106:	57                   	push   %edi
4a7107:	4b                   	dec    %ebx
4a7108:	e8 83 c7 00 00       	call   0x4b3890
4a710d:	83 c4 08             	add    $0x8,%esp
4a7110:	83 f8 ff             	cmp    $0xffffffff,%eax
4a7113:	0f 84 c0 00 00 00    	je     0x4a71d9
4a7119:	8b 54 24 10          	mov    0x10(%esp),%edx
4a711d:	88 04 16             	mov    %al,(%esi,%edx,1)
4a7120:	46                   	inc    %esi
4a7121:	85 db                	test   %ebx,%ebx
4a7123:	75 dc                	jne    0x4a7101
4a7125:	eb 1e                	jmp    0x4a7145
4a7127:	8b 54 24 10          	mov    0x10(%esp),%edx
4a712b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4a7130:	8a c3                	mov    %bl,%al
4a7132:	c1 eb 07             	shr    $0x7,%ebx
4a7135:	24 7f                	and    $0x7f,%al
4a7137:	88 04 16             	mov    %al,(%esi,%edx,1)
4a713a:	46                   	inc    %esi
4a713b:	85 db                	test   %ebx,%ebx
4a713d:	75 f1                	jne    0x4a7130
4a713f:	eb 04                	jmp    0x4a7145
4a7141:	8b 54 24 10          	mov    0x10(%esp),%edx
4a7145:	8b 5c 24 28          	mov    0x28(%esp),%ebx
4a7149:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a714d:	85 db                	test   %ebx,%ebx
4a714f:	74 25                	je     0x4a7176
4a7151:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
4a7154:	3b 44 24 50          	cmp    0x50(%esp),%eax
4a7158:	7f 67                	jg     0x4a71c1
4a715a:	4e                   	dec    %esi
4a715b:	85 f6                	test   %esi,%esi
4a715d:	7e 0f                	jle    0x4a716e
4a715f:	90                   	nop
4a7160:	8a 04 16             	mov    (%esi,%edx,1),%al
4a7163:	4e                   	dec    %esi
4a7164:	0c 80                	or     $0x80,%al
4a7166:	88 04 0b             	mov    %al,(%ebx,%ecx,1)
4a7169:	41                   	inc    %ecx
4a716a:	85 f6                	test   %esi,%esi
4a716c:	7f f2                	jg     0x4a7160
4a716e:	8a 02                	mov    (%edx),%al
4a7170:	88 04 0b             	mov    %al,(%ebx,%ecx,1)
4a7173:	41                   	inc    %ecx
4a7174:	eb 02                	jmp    0x4a7178
4a7176:	03 ce                	add    %esi,%ecx
4a7178:	8b 74 24 58          	mov    0x58(%esp),%esi
4a717c:	89 4c 24 14          	mov    %ecx,0x14(%esp)
4a7180:	85 f6                	test   %esi,%esi
4a7182:	0f 8e 88 00 00 00    	jle    0x4a7210
4a7188:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4a718c:	e9 ef fd ff ff       	jmp    0x4a6f80
4a7191:	6a 7a                	push   $0x7a
4a7193:	68 d4 8c 69 00       	push   $0x698cd4
4a7198:	68 83 00 00 00       	push   $0x83
4a719d:	eb 2e                	jmp    0x4a71cd
4a719f:	68 87 00 00 00       	push   $0x87
4a71a4:	68 d4 8c 69 00       	push   $0x698cd4
4a71a9:	68 82 00 00 00       	push   $0x82
4a71ae:	eb 1d                	jmp    0x4a71cd
4a71b0:	68 9b 00 00 00       	push   $0x9b
4a71b5:	68 d4 8c 69 00       	push   $0x698cd4
4a71ba:	68 93 00 00 00       	push   $0x93
4a71bf:	eb 0c                	jmp    0x4a71cd
4a71c1:	68 c3 00 00 00       	push   $0xc3
4a71c6:	68 d4 8c 69 00       	push   $0x698cd4
4a71cb:	6a 6b                	push   $0x6b
4a71cd:	6a 64                	push   $0x64
4a71cf:	6a 0d                	push   $0xd
4a71d1:	e8 ca a2 ff ff       	call   0x4a14a0
4a71d6:	83 c4 14             	add    $0x14,%esp
4a71d9:	8b 44 24 10          	mov    0x10(%esp),%eax
4a71dd:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4a71e1:	3b c1                	cmp    %ecx,%eax
4a71e3:	74 09                	je     0x4a71ee
4a71e5:	50                   	push   %eax
4a71e6:	e8 45 8f ff ff       	call   0x4a0130
4a71eb:	83 c4 04             	add    $0x4,%esp
4a71ee:	85 ff                	test   %edi,%edi
4a71f0:	74 6a                	je     0x4a725c
4a71f2:	57                   	push   %edi
4a71f3:	e8 e8 bf 00 00       	call   0x4b31e0
4a71f8:	83 c4 04             	add    $0x4,%esp
4a71fb:	33 c0                	xor    %eax,%eax
4a71fd:	5d                   	pop    %ebp
4a71fe:	5b                   	pop    %ebx
4a71ff:	5f                   	pop    %edi
4a7200:	5e                   	pop    %esi
4a7201:	8b 4c 24 34          	mov    0x34(%esp),%ecx
4a7205:	33 cc                	xor    %esp,%ecx
4a7207:	e8 ce a2 13 00       	call   0x5e14da
4a720c:	83 c4 38             	add    $0x38,%esp
4a720f:	c3                   	ret
4a7210:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4a7214:	3b d0                	cmp    %eax,%edx
4a7216:	74 09                	je     0x4a7221
4a7218:	52                   	push   %edx
4a7219:	e8 12 8f ff ff       	call   0x4a0130
4a721e:	83 c4 04             	add    $0x4,%esp
4a7221:	85 ff                	test   %edi,%edi
4a7223:	74 09                	je     0x4a722e
4a7225:	57                   	push   %edi
4a7226:	e8 b5 bf 00 00       	call   0x4b31e0
4a722b:	83 c4 04             	add    $0x4,%esp
4a722e:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a7232:	5d                   	pop    %ebp
4a7233:	5b                   	pop    %ebx
4a7234:	5f                   	pop    %edi
4a7235:	8b c1                	mov    %ecx,%eax
4a7237:	5e                   	pop    %esi
4a7238:	8b 4c 24 34          	mov    0x34(%esp),%ecx
4a723c:	33 cc                	xor    %esp,%ecx
4a723e:	e8 97 a2 13 00       	call   0x5e14da
4a7243:	83 c4 38             	add    $0x38,%esp
4a7246:	c3                   	ret
4a7247:	6a 6c                	push   $0x6c
4a7249:	68 d4 8c 69 00       	push   $0x698cd4
4a724e:	6a 7a                	push   $0x7a
4a7250:	6a 64                	push   $0x64
4a7252:	6a 0d                	push   $0xd
4a7254:	e8 47 a2 ff ff       	call   0x4a14a0
4a7259:	83 c4 14             	add    $0x14,%esp
4a725c:	8b 4c 24 44          	mov    0x44(%esp),%ecx
4a7260:	33 c0                	xor    %eax,%eax
4a7262:	5d                   	pop    %ebp
4a7263:	5b                   	pop    %ebx
4a7264:	5f                   	pop    %edi
4a7265:	5e                   	pop    %esi
4a7266:	33 cc                	xor    %esp,%ecx
4a7268:	e8 6d a2 13 00       	call   0x5e14da
4a726d:	83 c4 38             	add    $0x38,%esp
4a7270:	c3                   	ret
4a7271:	cc                   	int3
4a7272:	cc                   	int3
4a7273:	cc                   	int3
4a7274:	cc                   	int3
4a7275:	cc                   	int3
4a7276:	cc                   	int3
4a7277:	cc                   	int3
4a7278:	cc                   	int3
4a7279:	cc                   	int3
4a727a:	cc                   	int3
4a727b:	cc                   	int3
4a727c:	cc                   	int3
4a727d:	cc                   	int3
4a727e:	cc                   	int3
4a727f:	cc                   	int3
4a7280:	55                   	push   %ebp
4a7281:	57                   	push   %edi
4a7282:	8b 7c 24 14          	mov    0x14(%esp),%edi
4a7286:	8d 47 ff             	lea    -0x1(%edi),%eax
4a7289:	3d fe ff ff 7f       	cmp    $0x7ffffffe,%eax
4a728e:	0f 87 4a 01 00 00    	ja     0x4a73de
4a7294:	8b 6c 24 10          	mov    0x10(%esp),%ebp
4a7298:	85 ed                	test   %ebp,%ebp
4a729a:	0f 84 3e 01 00 00    	je     0x4a73de
4a72a0:	8b 55 00             	mov    0x0(%ebp),%edx
4a72a3:	85 d2                	test   %edx,%edx
4a72a5:	0f 84 33 01 00 00    	je     0x4a73de
4a72ab:	f6 44 3a ff 80       	testb  $0x80,-0x1(%edx,%edi,1)
4a72b0:	0f 85 28 01 00 00    	jne    0x4a73de
4a72b6:	33 c0                	xor    %eax,%eax
4a72b8:	85 ff                	test   %edi,%edi
4a72ba:	7e 21                	jle    0x4a72dd
4a72bc:	8d 4a ff             	lea    -0x1(%edx),%ecx
4a72bf:	90                   	nop
4a72c0:	80 3c 02 80          	cmpb   $0x80,(%edx,%eax,1)
4a72c4:	75 11                	jne    0x4a72d7
4a72c6:	85 c0                	test   %eax,%eax
4a72c8:	0f 84 ae 00 00 00    	je     0x4a737c
4a72ce:	f6 01 80             	testb  $0x80,(%ecx)
4a72d1:	0f 84 a5 00 00 00    	je     0x4a737c
4a72d7:	40                   	inc    %eax
4a72d8:	41                   	inc    %ecx
4a72d9:	3b c7                	cmp    %edi,%eax
4a72db:	7c e3                	jl     0x4a72c0
4a72dd:	53                   	push   %ebx
4a72de:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4a72e2:	56                   	push   %esi
4a72e3:	85 db                	test   %ebx,%ebx
4a72e5:	74 0c                	je     0x4a72f3
4a72e7:	8b 33                	mov    (%ebx),%esi
4a72e9:	85 f6                	test   %esi,%esi
4a72eb:	74 06                	je     0x4a72f3
4a72ed:	f6 46 14 01          	testb  $0x1,0x14(%esi)
4a72f1:	75 0b                	jne    0x4a72fe
4a72f3:	e8 78 fb ff ff       	call   0x4a6e70
4a72f8:	8b f0                	mov    %eax,%esi
4a72fa:	85 f6                	test   %esi,%esi
4a72fc:	74 77                	je     0x4a7375
4a72fe:	8b 45 00             	mov    0x0(%ebp),%eax
4a7301:	8b 6e 10             	mov    0x10(%esi),%ebp
4a7304:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4a7308:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
4a730f:	85 ed                	test   %ebp,%ebp
4a7311:	74 09                	je     0x4a731c
4a7313:	39 7e 0c             	cmp    %edi,0xc(%esi)
4a7316:	0f 8d 8b 00 00 00    	jge    0x4a73a7
4a731c:	c7 46 0c 00 00 00 00 	movl   $0x0,0xc(%esi)
4a7323:	85 ed                	test   %ebp,%ebp
4a7325:	74 09                	je     0x4a7330
4a7327:	55                   	push   %ebp
4a7328:	e8 03 8e ff ff       	call   0x4a0130
4a732d:	83 c4 04             	add    $0x4,%esp
4a7330:	68 3f 01 00 00       	push   $0x13f
4a7335:	68 d4 8c 69 00       	push   $0x698cd4
4a733a:	57                   	push   %edi
4a733b:	e8 70 8e ff ff       	call   0x4a01b0
4a7340:	8b e8                	mov    %eax,%ebp
4a7342:	83 c4 0c             	add    $0xc,%esp
4a7345:	85 ed                	test   %ebp,%ebp
4a7347:	75 56                	jne    0x4a739f
4a7349:	68 54 01 00 00       	push   $0x154
4a734e:	68 d4 8c 69 00       	push   $0x698cd4
4a7353:	6a 41                	push   $0x41
4a7355:	68 c4 00 00 00       	push   $0xc4
4a735a:	6a 0d                	push   $0xd
4a735c:	e8 3f a1 ff ff       	call   0x4a14a0
4a7361:	83 c4 14             	add    $0x14,%esp
4a7364:	85 db                	test   %ebx,%ebx
4a7366:	74 04                	je     0x4a736c
4a7368:	39 33                	cmp    %esi,(%ebx)
4a736a:	74 09                	je     0x4a7375
4a736c:	56                   	push   %esi
4a736d:	e8 8e fa ff ff       	call   0x4a6e00
4a7372:	83 c4 04             	add    $0x4,%esp
4a7375:	5e                   	pop    %esi
4a7376:	5b                   	pop    %ebx
4a7377:	5f                   	pop    %edi
4a7378:	33 c0                	xor    %eax,%eax
4a737a:	5d                   	pop    %ebp
4a737b:	c3                   	ret
4a737c:	68 26 01 00 00       	push   $0x126
4a7381:	68 d4 8c 69 00       	push   $0x698cd4
4a7386:	68 d8 00 00 00       	push   $0xd8
4a738b:	68 c4 00 00 00       	push   $0xc4
4a7390:	6a 0d                	push   $0xd
4a7392:	e8 09 a1 ff ff       	call   0x4a14a0
4a7397:	83 c4 14             	add    $0x14,%esp
4a739a:	33 c0                	xor    %eax,%eax
4a739c:	5f                   	pop    %edi
4a739d:	5d                   	pop    %ebp
4a739e:	c3                   	ret
4a739f:	83 4e 14 08          	orl    $0x8,0x14(%esi)
4a73a3:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a73a7:	57                   	push   %edi
4a73a8:	50                   	push   %eax
4a73a9:	55                   	push   %ebp
4a73aa:	e8 51 bb 13 00       	call   0x5e2f00
4a73af:	8b 44 24 28          	mov    0x28(%esp),%eax
4a73b3:	83 c4 0c             	add    $0xc,%esp
4a73b6:	03 c7                	add    %edi,%eax
4a73b8:	89 6e 10             	mov    %ebp,0x10(%esi)
4a73bb:	89 7e 0c             	mov    %edi,0xc(%esi)
4a73be:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
4a73c4:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
4a73cb:	85 db                	test   %ebx,%ebx
4a73cd:	74 02                	je     0x4a73d1
4a73cf:	89 33                	mov    %esi,(%ebx)
4a73d1:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4a73d5:	89 01                	mov    %eax,(%ecx)
4a73d7:	8b c6                	mov    %esi,%eax
4a73d9:	5e                   	pop    %esi
4a73da:	5b                   	pop    %ebx
4a73db:	5f                   	pop    %edi
4a73dc:	5d                   	pop    %ebp
4a73dd:	c3                   	ret
4a73de:	68 1f 01 00 00       	push   $0x11f
4a73e3:	eb 9c                	jmp    0x4a7381
4a73e5:	cc                   	int3
4a73e6:	cc                   	int3
4a73e7:	cc                   	int3
4a73e8:	cc                   	int3
4a73e9:	cc                   	int3
4a73ea:	cc                   	int3
4a73eb:	cc                   	int3
4a73ec:	cc                   	int3
4a73ed:	cc                   	int3
4a73ee:	cc                   	int3
4a73ef:	cc                   	int3
4a73f0:	b8 0c 00 00 00       	mov    $0xc,%eax
4a73f5:	e8 f6 a0 13 00       	call   0x5e14f0
4a73fa:	56                   	push   %esi
4a73fb:	8b 74 24 18          	mov    0x18(%esp),%esi
4a73ff:	ff 74 24 1c          	push   0x1c(%esp)
4a7403:	8b 06                	mov    (%esi),%eax
4a7405:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4a7409:	8d 44 24 10          	lea    0x10(%esp),%eax