5e1f49:	83 e0 3f             	and    $0x3f,%eax
5e1f4c:	6b c8 38             	imul   $0x38,%eax,%ecx
5e1f4f:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e1f56:	88 5c 08 28          	mov    %bl,0x28(%eax,%ecx,1)
5e1f5a:	ff 36                	push   (%esi)
5e1f5c:	e8 0d ce 00 00       	call   0x5eed6e
5e1f61:	59                   	pop    %ecx
5e1f62:	c3                   	ret
5e1f63:	8b ff                	mov    %edi,%edi
5e1f65:	55                   	push   %ebp
5e1f66:	8b ec                	mov    %esp,%ebp
5e1f68:	51                   	push   %ecx
5e1f69:	51                   	push   %ecx
5e1f6a:	8b 45 08             	mov    0x8(%ebp),%eax
5e1f6d:	8b 55 08             	mov    0x8(%ebp),%edx
5e1f70:	83 e0 3f             	and    $0x3f,%eax
5e1f73:	53                   	push   %ebx
5e1f74:	56                   	push   %esi
5e1f75:	57                   	push   %edi
5e1f76:	8b 7d 28             	mov    0x28(%ebp),%edi
5e1f79:	33 db                	xor    %ebx,%ebx
5e1f7b:	c1 fa 06             	sar    $0x6,%edx
5e1f7e:	6b c8 38             	imul   $0x38,%eax,%ecx
5e1f81:	88 1f                	mov    %bl,(%edi)
5e1f83:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e1f8a:	38 5c 08 28          	cmp    %bl,0x28(%eax,%ecx,1)
5e1f8e:	0f 8d 13 02 00 00    	jge    0x5e21a7
5e1f94:	8b 75 24             	mov    0x24(%ebp),%esi
5e1f97:	f7 c6 00 40 07 00    	test   $0x74000,%esi
5e1f9d:	75 25                	jne    0x5e1fc4
5e1f9f:	8d 45 fc             	lea    -0x4(%ebp),%eax
5e1fa2:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5e1fa5:	50                   	push   %eax
5e1fa6:	e8 e5 1b 00 00       	call   0x5e3b90
5e1fab:	59                   	pop    %ecx
5e1fac:	85 c0                	test   %eax,%eax
5e1fae:	0f 85 fa 01 00 00    	jne    0x5e21ae
5e1fb4:	8b 45 fc             	mov    -0x4(%ebp),%eax
5e1fb7:	25 00 40 07 00       	and    $0x74000,%eax
5e1fbc:	75 49                	jne    0x5e2007
5e1fbe:	81 ce 00 40 00 00    	or     $0x4000,%esi
5e1fc4:	8b c6                	mov    %esi,%eax
5e1fc6:	6a 02                	push   $0x2
5e1fc8:	25 00 40 07 00       	and    $0x74000,%eax
5e1fcd:	59                   	pop    %ecx
5e1fce:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5e1fd1:	3d 00 40 00 00       	cmp    $0x4000,%eax
5e1fd6:	74 44                	je     0x5e201c
5e1fd8:	3d 00 00 01 00       	cmp    $0x10000,%eax
5e1fdd:	74 2c                	je     0x5e200b
5e1fdf:	3d 00 40 01 00       	cmp    $0x14000,%eax
5e1fe4:	74 25                	je     0x5e200b
5e1fe6:	3d 00 00 02 00       	cmp    $0x20000,%eax
5e1feb:	74 2b                	je     0x5e2018
5e1fed:	3d 00 40 02 00       	cmp    $0x24000,%eax
5e1ff2:	74 24                	je     0x5e2018
5e1ff4:	3d 00 00 04 00       	cmp    $0x40000,%eax
5e1ff9:	74 07                	je     0x5e2002
5e1ffb:	3d 00 40 04 00       	cmp    $0x44000,%eax
5e2000:	75 1c                	jne    0x5e201e
5e2002:	c6 07 01             	movb   $0x1,(%edi)
5e2005:	eb 17                	jmp    0x5e201e
5e2007:	0b f0                	or     %eax,%esi
5e2009:	eb b9                	jmp    0x5e1fc4
5e200b:	ba 01 03 00 00       	mov    $0x301,%edx
5e2010:	8b c6                	mov    %esi,%eax
5e2012:	23 c2                	and    %edx,%eax
5e2014:	3b c2                	cmp    %edx,%eax
5e2016:	75 06                	jne    0x5e201e
5e2018:	88 0f                	mov    %cl,(%edi)
5e201a:	eb 02                	jmp    0x5e201e
5e201c:	88 1f                	mov    %bl,(%edi)
5e201e:	f7 c6 00 00 07 00    	test   $0x70000,%esi
5e2024:	0f 84 7d 01 00 00    	je     0x5e21a7
5e202a:	f6 45 0c 40          	testb  $0x40,0xc(%ebp)
5e202e:	0f 85 73 01 00 00    	jne    0x5e21a7
5e2034:	8b 45 10             	mov    0x10(%ebp),%eax
5e2037:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
5e203c:	23 c2                	and    %edx,%eax
5e203e:	be 00 00 00 80       	mov    $0x80000000,%esi
5e2043:	3d 00 00 00 40       	cmp    $0x40000000,%eax
5e2048:	74 0c                	je     0x5e2056
5e204a:	3b c6                	cmp    %esi,%eax
5e204c:	74 75                	je     0x5e20c3
5e204e:	3b c2                	cmp    %edx,%eax
5e2050:	0f 85 51 01 00 00    	jne    0x5e21a7
5e2056:	8b 45 14             	mov    0x14(%ebp),%eax
5e2059:	83 e8 01             	sub    $0x1,%eax
5e205c:	0f 84 fa 00 00 00    	je     0x5e215c
5e2062:	83 e8 01             	sub    $0x1,%eax
5e2065:	0f 84 f1 00 00 00    	je     0x5e215c
5e206b:	83 e8 01             	sub    $0x1,%eax
5e206e:	74 13                	je     0x5e2083
5e2070:	83 e8 01             	sub    $0x1,%eax
5e2073:	74 0e                	je     0x5e2083
5e2075:	83 e8 01             	sub    $0x1,%eax
5e2078:	0f 84 de 00 00 00    	je     0x5e215c
5e207e:	e9 24 01 00 00       	jmp    0x5e21a7
5e2083:	51                   	push   %ecx
5e2084:	53                   	push   %ebx
5e2085:	53                   	push   %ebx
5e2086:	ff 75 08             	push   0x8(%ebp)
5e2089:	e8 32 d3 00 00       	call   0x5ef3c0
5e208e:	83 c4 10             	add    $0x10,%esp
5e2091:	0b c2                	or     %edx,%eax
5e2093:	0f 84 c0 00 00 00    	je     0x5e2159
5e2099:	53                   	push   %ebx
5e209a:	53                   	push   %ebx
5e209b:	53                   	push   %ebx
5e209c:	ff 75 08             	push   0x8(%ebp)
5e209f:	e8 1c d3 00 00       	call   0x5ef3c0
5e20a4:	23 c2                	and    %edx,%eax
5e20a6:	83 c4 10             	add    $0x10,%esp
5e20a9:	83 f8 ff             	cmp    $0xffffffff,%eax
5e20ac:	75 0c                	jne    0x5e20ba
5e20ae:	e8 d5 8b ff ff       	call   0x5dac88
5e20b3:	8b 00                	mov    (%eax),%eax
5e20b5:	e9 ef 00 00 00       	jmp    0x5e21a9
5e20ba:	85 75 10             	test   %esi,0x10(%ebp)
5e20bd:	0f 84 e4 00 00 00    	je     0x5e21a7
5e20c3:	6a 03                	push   $0x3
5e20c5:	8d 45 fc             	lea    -0x4(%ebp),%eax
5e20c8:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5e20cb:	50                   	push   %eax
5e20cc:	ff 75 08             	push   0x8(%ebp)
5e20cf:	e8 31 17 00 00       	call   0x5e3805
5e20d4:	8b c8                	mov    %eax,%ecx
5e20d6:	83 c4 0c             	add    $0xc,%esp
5e20d9:	85 c9                	test   %ecx,%ecx
5e20db:	7f 05                	jg     0x5e20e2
5e20dd:	83 f9 ff             	cmp    $0xffffffff,%ecx
5e20e0:	74 cc                	je     0x5e20ae
5e20e2:	8b 55 fc             	mov    -0x4(%ebp),%edx
5e20e5:	6a 02                	push   $0x2
5e20e7:	58                   	pop    %eax
5e20e8:	3b c8                	cmp    %eax,%ecx
5e20ea:	74 15                	je     0x5e2101
5e20ec:	83 f9 03             	cmp    $0x3,%ecx
5e20ef:	75 4e                	jne    0x5e213f
5e20f1:	81 fa ef bb bf 00    	cmp    $0xbfbbef,%edx
5e20f7:	75 08                	jne    0x5e2101
5e20f9:	c6 07 01             	movb   $0x1,(%edi)
5e20fc:	e9 a6 00 00 00       	jmp    0x5e21a7
5e2101:	0f b7 ca             	movzwl %dx,%ecx
5e2104:	81 f9 fe ff 00 00    	cmp    $0xfffe,%ecx
5e210a:	75 0d                	jne    0x5e2119
5e210c:	e8 77 8b ff ff       	call   0x5dac88
5e2111:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e2117:	eb 95                	jmp    0x5e20ae
5e2119:	81 f9 ff fe 00 00    	cmp    $0xfeff,%ecx
5e211f:	75 1e                	jne    0x5e213f
5e2121:	53                   	push   %ebx
5e2122:	53                   	push   %ebx
5e2123:	50                   	push   %eax
5e2124:	ff 75 08             	push   0x8(%ebp)
5e2127:	e8 94 d2 00 00       	call   0x5ef3c0
5e212c:	23 c2                	and    %edx,%eax
5e212e:	83 c4 10             	add    $0x10,%esp
5e2131:	83 f8 ff             	cmp    $0xffffffff,%eax
5e2134:	0f 84 74 ff ff ff    	je     0x5e20ae
5e213a:	c6 07 02             	movb   $0x2,(%edi)
5e213d:	eb 68                	jmp    0x5e21a7
5e213f:	53                   	push   %ebx
5e2140:	53                   	push   %ebx
5e2141:	53                   	push   %ebx
5e2142:	ff 75 08             	push   0x8(%ebp)
5e2145:	e8 76 d2 00 00       	call   0x5ef3c0
5e214a:	23 c2                	and    %edx,%eax
5e214c:	83 c4 10             	add    $0x10,%esp
5e214f:	83 f8 ff             	cmp    $0xffffffff,%eax
5e2152:	75 53                	jne    0x5e21a7
5e2154:	e9 55 ff ff ff       	jmp    0x5e20ae
5e2159:	6a 02                	push   $0x2
5e215b:	59                   	pop    %ecx
5e215c:	0f be 07             	movsbl (%edi),%eax
5e215f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5e2162:	83 e8 01             	sub    $0x1,%eax
5e2165:	74 0c                	je     0x5e2173
5e2167:	83 e8 01             	sub    $0x1,%eax
5e216a:	75 3b                	jne    0x5e21a7
5e216c:	b8 ff fe 00 00       	mov    $0xfeff,%eax
5e2171:	eb 0b                	jmp    0x5e217e
5e2173:	6a 03                	push   $0x3
5e2175:	59                   	pop    %ecx
5e2176:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5e2179:	b8 ef bb bf 00       	mov    $0xbfbbef,%eax
5e217e:	89 45 fc             	mov    %eax,-0x4(%ebp)
5e2181:	2b cb                	sub    %ebx,%ecx
5e2183:	8d 45 fc             	lea    -0x4(%ebp),%eax
5e2186:	51                   	push   %ecx
5e2187:	03 c3                	add    %ebx,%eax
5e2189:	50                   	push   %eax
5e218a:	ff 75 08             	push   0x8(%ebp)
5e218d:	e8 f9 23 00 00       	call   0x5e458b
5e2192:	83 c4 0c             	add    $0xc,%esp
5e2195:	83 f8 ff             	cmp    $0xffffffff,%eax
5e2198:	0f 84 10 ff ff ff    	je     0x5e20ae
5e219e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5e21a1:	03 d8                	add    %eax,%ebx
5e21a3:	3b cb                	cmp    %ebx,%ecx
5e21a5:	7f da                	jg     0x5e2181
5e21a7:	33 c0                	xor    %eax,%eax
5e21a9:	5f                   	pop    %edi
5e21aa:	5e                   	pop    %esi
5e21ab:	5b                   	pop    %ebx
5e21ac:	c9                   	leave
5e21ad:	c3                   	ret
5e21ae:	53                   	push   %ebx
5e21af:	53                   	push   %ebx
5e21b0:	53                   	push   %ebx
5e21b1:	53                   	push   %ebx
5e21b2:	53                   	push   %ebx
5e21b3:	e8 55 40 ff ff       	call   0x5d620d
5e21b8:	cc                   	int3
5e21b9:	8b ff                	mov    %edi,%edi
5e21bb:	55                   	push   %ebp
5e21bc:	8b ec                	mov    %esp,%ebp
5e21be:	8b 45 20             	mov    0x20(%ebp),%eax
5e21c1:	0b 45 24             	or     0x24(%ebp),%eax
5e21c4:	6a 00                	push   $0x0
5e21c6:	50                   	push   %eax
5e21c7:	ff 75 18             	push   0x18(%ebp)
5e21ca:	ff 75 0c             	push   0xc(%ebp)
5e21cd:	ff 75 1c             	push   0x1c(%ebp)
5e21d0:	ff 75 14             	push   0x14(%ebp)
5e21d3:	ff 75 08             	push   0x8(%ebp)
5e21d6:	ff 15 18 21 60 00    	call   *0x602118
5e21dc:	5d                   	pop    %ebp
5e21dd:	c3                   	ret
5e21de:	8b ff                	mov    %edi,%edi
5e21e0:	55                   	push   %ebp
5e21e1:	8b ec                	mov    %esp,%ebp
5e21e3:	8b 45 08             	mov    0x8(%ebp),%eax
5e21e6:	ba 00 07 00 00       	mov    $0x700,%edx
5e21eb:	23 c2                	and    %edx,%eax
5e21ed:	b9 00 04 00 00       	mov    $0x400,%ecx
5e21f2:	3b c1                	cmp    %ecx,%eax
5e21f4:	77 28                	ja     0x5e221e
5e21f6:	74 21                	je     0x5e2219
5e21f8:	85 c0                	test   %eax,%eax
5e21fa:	74 1d                	je     0x5e2219
5e21fc:	3d 00 01 00 00       	cmp    $0x100,%eax
5e2201:	74 12                	je     0x5e2215
5e2203:	3d 00 02 00 00       	cmp    $0x200,%eax
5e2208:	74 3b                	je     0x5e2245
5e220a:	3d 00 03 00 00       	cmp    $0x300,%eax
5e220f:	75 1f                	jne    0x5e2230
5e2211:	6a 02                	push   $0x2
5e2213:	eb 06                	jmp    0x5e221b
5e2215:	6a 04                	push   $0x4
5e2217:	eb 02                	jmp    0x5e221b
5e2219:	6a 03                	push   $0x3
5e221b:	58                   	pop    %eax
5e221c:	5d                   	pop    %ebp
5e221d:	c3                   	ret
5e221e:	3d 00 05 00 00       	cmp    $0x500,%eax
5e2223:	74 24                	je     0x5e2249
5e2225:	3d 00 06 00 00       	cmp    $0x600,%eax
5e222a:	74 19                	je     0x5e2245
5e222c:	3b c2                	cmp    %edx,%eax
5e222e:	74 19                	je     0x5e2249
5e2230:	e8 53 8a ff ff       	call   0x5dac88
5e2235:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e223b:	e8 a0 3f ff ff       	call   0x5d61e0
5e2240:	83 c8 ff             	or     $0xffffffff,%eax
5e2243:	5d                   	pop    %ebp
5e2244:	c3                   	ret
5e2245:	6a 05                	push   $0x5
5e2247:	eb d2                	jmp    0x5e221b
5e2249:	33 c0                	xor    %eax,%eax
5e224b:	40                   	inc    %eax
5e224c:	5d                   	pop    %ebp
5e224d:	c3                   	ret
5e224e:	8b ff                	mov    %edi,%edi
5e2250:	55                   	push   %ebp
5e2251:	8b ec                	mov    %esp,%ebp
5e2253:	51                   	push   %ecx
5e2254:	53                   	push   %ebx
5e2255:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5e2258:	8b c3                	mov    %ebx,%eax
5e225a:	56                   	push   %esi
5e225b:	8b 75 08             	mov    0x8(%ebp),%esi
5e225e:	83 e0 03             	and    $0x3,%eax
5e2261:	57                   	push   %edi
5e2262:	bf 00 00 00 80       	mov    $0x80000000,%edi
5e2267:	c6 06 00             	movb   $0x0,(%esi)
5e226a:	83 e8 00             	sub    $0x0,%eax
5e226d:	74 47                	je     0x5e22b6
5e226f:	83 e8 01             	sub    $0x1,%eax
5e2272:	74 21                	je     0x5e2295
5e2274:	83 e8 01             	sub    $0x1,%eax
5e2277:	74 15                	je     0x5e228e
5e2279:	e8 0a 8a ff ff       	call   0x5dac88
5e227e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e2284:	e8 57 3f ff ff       	call   0x5d61e0
5e2289:	83 c8 ff             	or     $0xffffffff,%eax
5e228c:	eb 2a                	jmp    0x5e22b8
5e228e:	b8 00 00 00 c0       	mov    $0xc0000000,%eax
5e2293:	eb 23                	jmp    0x5e22b8
5e2295:	f7 c3 00 00 07 00    	test   $0x70000,%ebx
5e229b:	0f 95 c1             	setne  %cl
5e229e:	f6 c3 08             	test   $0x8,%bl
5e22a1:	0f 95 c0             	setne  %al
5e22a4:	22 c8                	and    %al,%cl
5e22a6:	0f b6 c1             	movzbl %cl,%eax
5e22a9:	f7 d8                	neg    %eax
5e22ab:	1b c0                	sbb    %eax,%eax
5e22ad:	23 c7                	and    %edi,%eax
5e22af:	05 00 00 00 40       	add    $0x40000000,%eax
5e22b4:	eb 02                	jmp    0x5e22b8
5e22b6:	8b c7                	mov    %edi,%eax
5e22b8:	53                   	push   %ebx
5e22b9:	89 46 04             	mov    %eax,0x4(%esi)
5e22bc:	e8 1d ff ff ff       	call   0x5e21de
5e22c1:	59                   	pop    %ecx
5e22c2:	89 46 08             	mov    %eax,0x8(%esi)
5e22c5:	8b 45 10             	mov    0x10(%ebp),%eax
5e22c8:	6a 10                	push   $0x10
5e22ca:	59                   	pop    %ecx
5e22cb:	2b c1                	sub    %ecx,%eax
5e22cd:	74 3e                	je     0x5e230d
5e22cf:	2b c1                	sub    %ecx,%eax
5e22d1:	74 35                	je     0x5e2308
5e22d3:	2b c1                	sub    %ecx,%eax
5e22d5:	74 2c                	je     0x5e2303
5e22d7:	2b c1                	sub    %ecx,%eax
5e22d9:	74 24                	je     0x5e22ff
5e22db:	83 e8 40             	sub    $0x40,%eax
5e22de:	74 15                	je     0x5e22f5
5e22e0:	e8 a3 89 ff ff       	call   0x5dac88
5e22e5:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e22eb:	e8 f0 3e ff ff       	call   0x5d61e0
5e22f0:	83 c8 ff             	or     $0xffffffff,%eax
5e22f3:	eb 1a                	jmp    0x5e230f
5e22f5:	33 c0                	xor    %eax,%eax
5e22f7:	39 7e 04             	cmp    %edi,0x4(%esi)
5e22fa:	0f 94 c0             	sete   %al
5e22fd:	eb 10                	jmp    0x5e230f
5e22ff:	6a 03                	push   $0x3
5e2301:	eb 02                	jmp    0x5e2305
5e2303:	6a 02                	push   $0x2
5e2305:	58                   	pop    %eax
5e2306:	eb 07                	jmp    0x5e230f
5e2308:	33 c0                	xor    %eax,%eax
5e230a:	40                   	inc    %eax
5e230b:	eb 02                	jmp    0x5e230f
5e230d:	33 c0                	xor    %eax,%eax
5e230f:	83 66 14 00          	andl   $0x0,0x14(%esi)
5e2313:	89 46 0c             	mov    %eax,0xc(%esi)
5e2316:	c7 46 10 80 00 00 00 	movl   $0x80,0x10(%esi)