5dff16:	68 15 00 00 40       	push   $0x40000015
5dff1b:	6a 03                	push   $0x3
5dff1d:	e8 c2 60 ff ff       	call   0x5d5fe4
5dff22:	83 c4 0c             	add    $0xc,%esp
5dff25:	6a 03                	push   $0x3
5dff27:	e8 61 52 00 00       	call   0x5e518d
5dff2c:	cc                   	int3
5dff2d:	8b ff                	mov    %edi,%edi
5dff2f:	55                   	push   %ebp
5dff30:	8b ec                	mov    %esp,%ebp
5dff32:	51                   	push   %ecx
5dff33:	ff 75 08             	push   0x8(%ebp)
5dff36:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5dff3d:	8b 45 fc             	mov    -0x4(%ebp),%eax
5dff40:	e8 dd b2 00 00       	call   0x5eb222
5dff45:	59                   	pop    %ecx
5dff46:	c9                   	leave
5dff47:	c3                   	ret
5dff48:	a1 bc 6c 71 00       	mov    0x716cbc,%eax
5dff4d:	56                   	push   %esi
5dff4e:	6a 03                	push   $0x3
5dff50:	5e                   	pop    %esi
5dff51:	85 c0                	test   %eax,%eax
5dff53:	75 07                	jne    0x5dff5c
5dff55:	b8 00 02 00 00       	mov    $0x200,%eax
5dff5a:	eb 06                	jmp    0x5dff62
5dff5c:	3b c6                	cmp    %esi,%eax
5dff5e:	7d 07                	jge    0x5dff67
5dff60:	8b c6                	mov    %esi,%eax
5dff62:	a3 bc 6c 71 00       	mov    %eax,0x716cbc
5dff67:	6a 04                	push   $0x4
5dff69:	50                   	push   %eax
5dff6a:	e8 d4 c5 00 00       	call   0x5ec543
5dff6f:	6a 00                	push   $0x0
5dff71:	a3 c0 6c 71 00       	mov    %eax,0x716cc0
5dff76:	e8 a7 b2 00 00       	call   0x5eb222
5dff7b:	83 c4 0c             	add    $0xc,%esp
5dff7e:	83 3d c0 6c 71 00 00 	cmpl   $0x0,0x716cc0
5dff85:	75 2b                	jne    0x5dffb2
5dff87:	6a 04                	push   $0x4
5dff89:	56                   	push   %esi
5dff8a:	89 35 bc 6c 71 00    	mov    %esi,0x716cbc
5dff90:	e8 ae c5 00 00       	call   0x5ec543
5dff95:	6a 00                	push   $0x0
5dff97:	a3 c0 6c 71 00       	mov    %eax,0x716cc0
5dff9c:	e8 81 b2 00 00       	call   0x5eb222
5dffa1:	83 c4 0c             	add    $0xc,%esp
5dffa4:	83 3d c0 6c 71 00 00 	cmpl   $0x0,0x716cc0
5dffab:	75 05                	jne    0x5dffb2
5dffad:	83 c8 ff             	or     $0xffffffff,%eax
5dffb0:	5e                   	pop    %esi
5dffb1:	c3                   	ret
5dffb2:	57                   	push   %edi
5dffb3:	33 ff                	xor    %edi,%edi
5dffb5:	be 78 15 69 00       	mov    $0x691578,%esi
5dffba:	6a 00                	push   $0x0
5dffbc:	68 a0 0f 00 00       	push   $0xfa0
5dffc1:	8d 46 20             	lea    0x20(%esi),%eax
5dffc4:	50                   	push   %eax
5dffc5:	e8 77 b0 00 00       	call   0x5eb041
5dffca:	a1 c0 6c 71 00       	mov    0x716cc0,%eax
5dffcf:	8b d7                	mov    %edi,%edx
5dffd1:	c1 fa 06             	sar    $0x6,%edx
5dffd4:	89 34 b8             	mov    %esi,(%eax,%edi,4)
5dffd7:	8b c7                	mov    %edi,%eax
5dffd9:	83 e0 3f             	and    $0x3f,%eax
5dffdc:	6b c8 38             	imul   $0x38,%eax,%ecx
5dffdf:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5dffe6:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
5dffea:	83 f8 ff             	cmp    $0xffffffff,%eax
5dffed:	74 09                	je     0x5dfff8
5dffef:	83 f8 fe             	cmp    $0xfffffffe,%eax
5dfff2:	74 04                	je     0x5dfff8
5dfff4:	85 c0                	test   %eax,%eax
5dfff6:	75 07                	jne    0x5dffff
5dfff8:	c7 46 10 fe ff ff ff 	movl   $0xfffffffe,0x10(%esi)
5dffff:	83 c6 38             	add    $0x38,%esi
5e0002:	47                   	inc    %edi
5e0003:	81 fe 20 16 69 00    	cmp    $0x691620,%esi
5e0009:	75 af                	jne    0x5dffba
5e000b:	5f                   	pop    %edi
5e000c:	33 c0                	xor    %eax,%eax
5e000e:	5e                   	pop    %esi
5e000f:	c3                   	ret
5e0010:	8b ff                	mov    %edi,%edi
5e0012:	55                   	push   %ebp
5e0013:	8b ec                	mov    %esp,%ebp
5e0015:	6b 45 08 38          	imul   $0x38,0x8(%ebp),%eax
5e0019:	05 78 15 69 00       	add    $0x691578,%eax
5e001e:	5d                   	pop    %ebp
5e001f:	c3                   	ret
5e0020:	8b ff                	mov    %edi,%edi
5e0022:	56                   	push   %esi
5e0023:	e8 73 03 00 00       	call   0x5e039b
5e0028:	e8 62 db 00 00       	call   0x5edb8f
5e002d:	33 f6                	xor    %esi,%esi
5e002f:	a1 c0 6c 71 00       	mov    0x716cc0,%eax
5e0034:	ff 34 06             	push   (%esi,%eax,1)
5e0037:	e8 fe db 00 00       	call   0x5edc3a
5e003c:	a1 c0 6c 71 00       	mov    0x716cc0,%eax
5e0041:	59                   	pop    %ecx
5e0042:	8b 04 06             	mov    (%esi,%eax,1),%eax
5e0045:	83 c0 20             	add    $0x20,%eax
5e0048:	50                   	push   %eax
5e0049:	ff 15 c0 21 60 00    	call   *0x6021c0
5e004f:	83 c6 04             	add    $0x4,%esi
5e0052:	83 fe 0c             	cmp    $0xc,%esi
5e0055:	75 d8                	jne    0x5e002f
5e0057:	ff 35 c0 6c 71 00    	push   0x716cc0
5e005d:	e8 c0 b1 00 00       	call   0x5eb222
5e0062:	83 25 c0 6c 71 00 00 	andl   $0x0,0x716cc0
5e0069:	59                   	pop    %ecx
5e006a:	5e                   	pop    %esi
5e006b:	c3                   	ret
5e006c:	8b ff                	mov    %edi,%edi
5e006e:	55                   	push   %ebp
5e006f:	8b ec                	mov    %esp,%ebp
5e0071:	8b 45 08             	mov    0x8(%ebp),%eax
5e0074:	83 c0 20             	add    $0x20,%eax
5e0077:	50                   	push   %eax
5e0078:	ff 15 ac 21 60 00    	call   *0x6021ac
5e007e:	5d                   	pop    %ebp
5e007f:	c3                   	ret
5e0080:	8b ff                	mov    %edi,%edi
5e0082:	55                   	push   %ebp
5e0083:	8b ec                	mov    %esp,%ebp
5e0085:	8b 45 08             	mov    0x8(%ebp),%eax
5e0088:	83 c0 20             	add    $0x20,%eax
5e008b:	50                   	push   %eax
5e008c:	ff 15 60 21 60 00    	call   *0x602160
5e0092:	5d                   	pop    %ebp
5e0093:	c3                   	ret
5e0094:	6a 08                	push   $0x8
5e0096:	68 10 a6 68 00       	push   $0x68a610
5e009b:	e8 60 28 ff ff       	call   0x5d2900
5e00a0:	8b 45 08             	mov    0x8(%ebp),%eax
5e00a3:	ff 30                	push   (%eax)
5e00a5:	e8 c2 ff ff ff       	call   0x5e006c
5e00aa:	59                   	pop    %ecx
5e00ab:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5e00af:	8b 75 0c             	mov    0xc(%ebp),%esi
5e00b2:	ff 76 04             	push   0x4(%esi)
5e00b5:	8b 06                	mov    (%esi),%eax
5e00b7:	ff 30                	push   (%eax)
5e00b9:	e8 bb 01 00 00       	call   0x5e0279
5e00be:	59                   	pop    %ecx
5e00bf:	59                   	pop    %ecx
5e00c0:	84 c0                	test   %al,%al
5e00c2:	74 32                	je     0x5e00f6
5e00c4:	8b 46 08             	mov    0x8(%esi),%eax
5e00c7:	80 38 00             	cmpb   $0x0,(%eax)
5e00ca:	75 0e                	jne    0x5e00da
5e00cc:	8b 06                	mov    (%esi),%eax
5e00ce:	8b 00                	mov    (%eax),%eax
5e00d0:	8b 40 0c             	mov    0xc(%eax),%eax
5e00d3:	90                   	nop
5e00d4:	d1 e8                	shr    $1,%eax
5e00d6:	a8 01                	test   $0x1,%al
5e00d8:	74 1c                	je     0x5e00f6
5e00da:	8b 06                	mov    (%esi),%eax
5e00dc:	ff 30                	push   (%eax)
5e00de:	e8 53 02 00 00       	call   0x5e0336
5e00e3:	59                   	pop    %ecx
5e00e4:	83 f8 ff             	cmp    $0xffffffff,%eax
5e00e7:	74 07                	je     0x5e00f0
5e00e9:	8b 46 04             	mov    0x4(%esi),%eax
5e00ec:	ff 00                	incl   (%eax)
5e00ee:	eb 06                	jmp    0x5e00f6
5e00f0:	8b 46 0c             	mov    0xc(%esi),%eax
5e00f3:	83 08 ff             	orl    $0xffffffff,(%eax)
5e00f6:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5e00fd:	e8 12 00 00 00       	call   0x5e0114
5e0102:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5e0105:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5e010c:	59                   	pop    %ecx
5e010d:	5f                   	pop    %edi
5e010e:	5e                   	pop    %esi
5e010f:	5b                   	pop    %ebx
5e0110:	c9                   	leave
5e0111:	c2 0c 00             	ret    $0xc
5e0114:	8b 45 10             	mov    0x10(%ebp),%eax
5e0117:	ff 30                	push   (%eax)
5e0119:	e8 62 ff ff ff       	call   0x5e0080
5e011e:	59                   	pop    %ecx
5e011f:	c3                   	ret
5e0120:	6a 2c                	push   $0x2c
5e0122:	68 30 a6 68 00       	push   $0x68a630
5e0127:	e8 d4 27 ff ff       	call   0x5d2900
5e012c:	8b 45 08             	mov    0x8(%ebp),%eax
5e012f:	ff 30                	push   (%eax)
5e0131:	e8 8c 84 00 00       	call   0x5e85c2
5e0136:	59                   	pop    %ecx
5e0137:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5e013b:	8b 35 c0 6c 71 00    	mov    0x716cc0,%esi
5e0141:	a1 bc 6c 71 00       	mov    0x716cbc,%eax
5e0146:	8d 1c 86             	lea    (%esi,%eax,4),%ebx
5e0149:	8b 7d 0c             	mov    0xc(%ebp),%edi
5e014c:	89 75 d4             	mov    %esi,-0x2c(%ebp)
5e014f:	3b f3                	cmp    %ebx,%esi
5e0151:	74 4f                	je     0x5e01a2
5e0153:	8b 06                	mov    (%esi),%eax
5e0155:	89 45 e0             	mov    %eax,-0x20(%ebp)
5e0158:	ff 37                	push   (%edi)
5e015a:	50                   	push   %eax
5e015b:	e8 19 01 00 00       	call   0x5e0279
5e0160:	59                   	pop    %ecx
5e0161:	59                   	pop    %ecx
5e0162:	84 c0                	test   %al,%al
5e0164:	74 37                	je     0x5e019d
5e0166:	8b 57 08             	mov    0x8(%edi),%edx
5e0169:	8b 4f 04             	mov    0x4(%edi),%ecx
5e016c:	8b 07                	mov    (%edi),%eax
5e016e:	8d 7d e0             	lea    -0x20(%ebp),%edi
5e0171:	89 7d c4             	mov    %edi,-0x3c(%ebp)
5e0174:	89 45 c8             	mov    %eax,-0x38(%ebp)
5e0177:	89 4d cc             	mov    %ecx,-0x34(%ebp)
5e017a:	89 55 d0             	mov    %edx,-0x30(%ebp)
5e017d:	8b 45 e0             	mov    -0x20(%ebp),%eax
5e0180:	89 45 dc             	mov    %eax,-0x24(%ebp)
5e0183:	89 45 d8             	mov    %eax,-0x28(%ebp)
5e0186:	8d 45 dc             	lea    -0x24(%ebp),%eax
5e0189:	50                   	push   %eax
5e018a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
5e018d:	50                   	push   %eax
5e018e:	8d 45 d8             	lea    -0x28(%ebp),%eax
5e0191:	50                   	push   %eax
5e0192:	8d 4d e7             	lea    -0x19(%ebp),%ecx
5e0195:	e8 fa fe ff ff       	call   0x5e0094
5e019a:	8b 7d 0c             	mov    0xc(%ebp),%edi
5e019d:	83 c6 04             	add    $0x4,%esi
5e01a0:	eb aa                	jmp    0x5e014c
5e01a2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5e01a9:	e8 12 00 00 00       	call   0x5e01c0
5e01ae:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5e01b1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5e01b8:	59                   	pop    %ecx
5e01b9:	5f                   	pop    %edi
5e01ba:	5e                   	pop    %esi
5e01bb:	5b                   	pop    %ebx
5e01bc:	c9                   	leave
5e01bd:	c2 0c 00             	ret    $0xc
5e01c0:	8b 45 10             	mov    0x10(%ebp),%eax
5e01c3:	ff 30                	push   (%eax)
5e01c5:	e8 40 84 00 00       	call   0x5e860a
5e01ca:	59                   	pop    %ecx
5e01cb:	c3                   	ret
5e01cc:	6a 0c                	push   $0xc
5e01ce:	68 50 a6 68 00       	push   $0x68a650
5e01d3:	e8 28 27 ff ff       	call   0x5d2900
5e01d8:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
5e01dc:	8b 45 08             	mov    0x8(%ebp),%eax
5e01df:	ff 30                	push   (%eax)
5e01e1:	e8 86 fe ff ff       	call   0x5e006c
5e01e6:	59                   	pop    %ecx
5e01e7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5e01eb:	8b 45 0c             	mov    0xc(%ebp),%eax
5e01ee:	8b 00                	mov    (%eax),%eax
5e01f0:	ff 30                	push   (%eax)
5e01f2:	e8 3f 01 00 00       	call   0x5e0336
5e01f7:	59                   	pop    %ecx
5e01f8:	8b f0                	mov    %eax,%esi
5e01fa:	89 75 e4             	mov    %esi,-0x1c(%ebp)
5e01fd:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5e0204:	e8 17 00 00 00       	call   0x5e0220
5e0209:	8b c6                	mov    %esi,%eax
5e020b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5e020e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5e0215:	59                   	pop    %ecx
5e0216:	5f                   	pop    %edi
5e0217:	5e                   	pop    %esi
5e0218:	5b                   	pop    %ebx
5e0219:	c9                   	leave
5e021a:	c2 0c 00             	ret    $0xc
5e021d:	8b 75 e4             	mov    -0x1c(%ebp),%esi
5e0220:	8b 45 10             	mov    0x10(%ebp),%eax
5e0223:	ff 30                	push   (%eax)
5e0225:	e8 56 fe ff ff       	call   0x5e0080
5e022a:	59                   	pop    %ecx
5e022b:	c3                   	ret
5e022c:	8b ff                	mov    %edi,%edi
5e022e:	55                   	push   %ebp
5e022f:	8b ec                	mov    %esp,%ebp
5e0231:	83 ec 20             	sub    $0x20,%esp
5e0234:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
5e0238:	8d 45 f8             	lea    -0x8(%ebp),%eax
5e023b:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
5e023f:	8d 4d ff             	lea    -0x1(%ebp),%ecx
5e0242:	89 45 e0             	mov    %eax,-0x20(%ebp)
5e0245:	8d 45 08             	lea    0x8(%ebp),%eax
5e0248:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5e024b:	8d 45 f4             	lea    -0xc(%ebp),%eax
5e024e:	6a 08                	push   $0x8
5e0250:	89 45 e8             	mov    %eax,-0x18(%ebp)
5e0253:	58                   	pop    %eax
5e0254:	89 45 f0             	mov    %eax,-0x10(%ebp)
5e0257:	89 45 ec             	mov    %eax,-0x14(%ebp)
5e025a:	8d 45 f0             	lea    -0x10(%ebp),%eax
5e025d:	50                   	push   %eax
5e025e:	8d 45 e0             	lea    -0x20(%ebp),%eax
5e0261:	50                   	push   %eax
5e0262:	8d 45 ec             	lea    -0x14(%ebp),%eax
5e0265:	50                   	push   %eax
5e0266:	e8 b5 fe ff ff       	call   0x5e0120
5e026b:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
5e026f:	8b 45 f8             	mov    -0x8(%ebp),%eax
5e0272:	75 03                	jne    0x5e0277
5e0274:	8b 45 f4             	mov    -0xc(%ebp),%eax
5e0277:	c9                   	leave
5e0278:	c3                   	ret
5e0279:	8b ff                	mov    %edi,%edi
5e027b:	55                   	push   %ebp
5e027c:	8b ec                	mov    %esp,%ebp
5e027e:	8b 45 08             	mov    0x8(%ebp),%eax
5e0281:	85 c0                	test   %eax,%eax
5e0283:	74 1d                	je     0x5e02a2
5e0285:	8b 48 0c             	mov    0xc(%eax),%ecx
5e0288:	90                   	nop
5e0289:	8b c1                	mov    %ecx,%eax
5e028b:	c1 e8 0d             	shr    $0xd,%eax
5e028e:	a8 01                	test   $0x1,%al
5e0290:	74 10                	je     0x5e02a2
5e0292:	51                   	push   %ecx
5e0293:	e8 12 00 00 00       	call   0x5e02aa
5e0298:	59                   	pop    %ecx
5e0299:	84 c0                	test   %al,%al
5e029b:	75 09                	jne    0x5e02a6
5e029d:	8b 45 0c             	mov    0xc(%ebp),%eax
5e02a0:	ff 00                	incl   (%eax)
5e02a2:	32 c0                	xor    %al,%al
5e02a4:	5d                   	pop    %ebp
5e02a5:	c3                   	ret
5e02a6:	b0 01                	mov    $0x1,%al
5e02a8:	5d                   	pop    %ebp
5e02a9:	c3                   	ret
5e02aa:	8b ff                	mov    %edi,%edi
5e02ac:	55                   	push   %ebp
5e02ad:	8b ec                	mov    %esp,%ebp
5e02af:	8b 4d 08             	mov    0x8(%ebp),%ecx
5e02b2:	8b c1                	mov    %ecx,%eax
5e02b4:	24 03                	and    $0x3,%al
5e02b6:	3c 02                	cmp    $0x2,%al
5e02b8:	75 09                	jne    0x5e02c3
5e02ba:	f6 c1 c0             	test   $0xc0,%cl
5e02bd:	74 04                	je     0x5e02c3
5e02bf:	fe c8                	dec    %al
5e02c1:	5d                   	pop    %ebp
5e02c2:	c3                   	ret
5e02c3:	c1 e9 0b             	shr    $0xb,%ecx
5e02c6:	80 e1 01             	and    $0x1,%cl
5e02c9:	8a c1                	mov    %cl,%al