5a20d2:	e8 89 11 e6 ff       	call   0x403260
5a20d7:	8b 55 10             	mov    0x10(%ebp),%edx
5a20da:	03 55 f8             	add    -0x8(%ebp),%edx
5a20dd:	03 c2                	add    %edx,%eax
5a20df:	50                   	push   %eax
5a20e0:	8b c6                	mov    %esi,%eax
5a20e2:	e8 79 11 e6 ff       	call   0x403260
5a20e7:	5a                   	pop    %edx
5a20e8:	2b d0                	sub    %eax,%edx
5a20ea:	d1 fa                	sar    $1,%edx
5a20ec:	79 03                	jns    0x5a20f1
5a20ee:	83 d2 00             	adc    $0x0,%edx
5a20f1:	52                   	push   %edx
5a20f2:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a20f5:	b9 05 00 00 00       	mov    $0x5,%ecx
5a20fa:	99                   	cltd
5a20fb:	f7 f9                	idiv   %ecx
5a20fd:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a2100:	83 c0 05             	add    $0x5,%eax
5a2103:	03 d0                	add    %eax,%edx
5a2105:	52                   	push   %edx
5a2106:	8b 45 10             	mov    0x10(%ebp),%eax
5a2109:	d1 f8                	sar    $1,%eax
5a210b:	79 03                	jns    0x5a2110
5a210d:	83 d0 00             	adc    $0x0,%eax
5a2110:	50                   	push   %eax
5a2111:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a2114:	50                   	push   %eax
5a2115:	e8 c6 53 e6 ff       	call   0x4074e0
5a211a:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a211d:	6a 02                	push   $0x2
5a211f:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a2122:	50                   	push   %eax
5a2123:	53                   	push   %ebx
5a2124:	53                   	push   %ebx
5a2125:	e8 1e 53 e6 ff       	call   0x407448
5a212a:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a212d:	50                   	push   %eax
5a212e:	e8 dd 53 e6 ff       	call   0x407510
5a2133:	e9 9a 00 00 00       	jmp    0x5a21d2
5a2138:	8b 45 10             	mov    0x10(%ebp),%eax
5a213b:	50                   	push   %eax
5a213c:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a213f:	b9 05 00 00 00       	mov    $0x5,%ecx
5a2144:	99                   	cltd
5a2145:	f7 f9                	idiv   %ecx
5a2147:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a214a:	83 c0 05             	add    $0x5,%eax
5a214d:	03 d0                	add    %eax,%edx
5a214f:	52                   	push   %edx
5a2150:	8b c6                	mov    %esi,%eax
5a2152:	e8 09 11 e6 ff       	call   0x403260
5a2157:	8b d8                	mov    %eax,%ebx
5a2159:	03 5d f8             	add    -0x8(%ebp),%ebx
5a215c:	8b c6                	mov    %esi,%eax
5a215e:	e8 fd 10 e6 ff       	call   0x403260
5a2163:	2b d8                	sub    %eax,%ebx
5a2165:	d1 fb                	sar    $1,%ebx
5a2167:	79 03                	jns    0x5a216c
5a2169:	83 d3 00             	adc    $0x0,%ebx
5a216c:	8b 45 10             	mov    0x10(%ebp),%eax
5a216f:	2b c3                	sub    %ebx,%eax
5a2171:	50                   	push   %eax
5a2172:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a2175:	50                   	push   %eax
5a2176:	e8 65 53 e6 ff       	call   0x4074e0
5a217b:	8b d8                	mov    %eax,%ebx
5a217d:	8b c6                	mov    %esi,%eax
5a217f:	e8 dc 10 e6 ff       	call   0x403260
5a2184:	03 45 f8             	add    -0x8(%ebp),%eax
5a2187:	50                   	push   %eax
5a2188:	8b c6                	mov    %esi,%eax
5a218a:	e8 d1 10 e6 ff       	call   0x403260
5a218f:	5a                   	pop    %edx
5a2190:	2b d0                	sub    %eax,%edx
5a2192:	d1 fa                	sar    $1,%edx
5a2194:	79 03                	jns    0x5a2199
5a2196:	83 d2 00             	adc    $0x0,%edx
5a2199:	52                   	push   %edx
5a219a:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a219d:	b9 05 00 00 00       	mov    $0x5,%ecx
5a21a2:	99                   	cltd
5a21a3:	f7 f9                	idiv   %ecx
5a21a5:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a21a8:	83 c0 05             	add    $0x5,%eax
5a21ab:	03 d0                	add    %eax,%edx
5a21ad:	52                   	push   %edx
5a21ae:	6a 00                	push   $0x0
5a21b0:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a21b3:	50                   	push   %eax
5a21b4:	e8 27 53 e6 ff       	call   0x4074e0
5a21b9:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a21bc:	6a 02                	push   $0x2
5a21be:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a21c1:	50                   	push   %eax
5a21c2:	53                   	push   %ebx
5a21c3:	53                   	push   %ebx
5a21c4:	e8 7f 52 e6 ff       	call   0x407448
5a21c9:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a21cc:	50                   	push   %eax
5a21cd:	e8 3e 53 e6 ff       	call   0x407510
5a21d2:	85 ff                	test   %edi,%edi
5a21d4:	74 12                	je     0x5a21e8
5a21d6:	6a 02                	push   $0x2
5a21d8:	53                   	push   %ebx
5a21d9:	57                   	push   %edi
5a21da:	57                   	push   %edi
5a21db:	e8 68 52 e6 ff       	call   0x407448
5a21e0:	53                   	push   %ebx
5a21e1:	e8 2a 53 e6 ff       	call   0x407510
5a21e6:	eb 02                	jmp    0x5a21ea
5a21e8:	8b fb                	mov    %ebx,%edi
5a21ea:	83 45 f0 05          	addl   $0x5,-0x10(%ebp)
5a21ee:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a21f1:	3b 45 f4             	cmp    -0xc(%ebp),%eax
5a21f4:	0f 8c f5 fd ff ff    	jl     0x5a1fef
5a21fa:	8b c7                	mov    %edi,%eax
5a21fc:	5f                   	pop    %edi
5a21fd:	5e                   	pop    %esi
5a21fe:	5b                   	pop    %ebx
5a21ff:	8b e5                	mov    %ebp,%esp
5a2201:	5d                   	pop    %ebp
5a2202:	c2 0c 00             	ret    $0xc
5a2205:	8d 40 00             	lea    0x0(%eax),%eax
5a2208:	55                   	push   %ebp
5a2209:	8b ec                	mov    %esp,%ebp
5a220b:	83 c4 e0             	add    $0xffffffe0,%esp
5a220e:	53                   	push   %ebx
5a220f:	56                   	push   %esi
5a2210:	57                   	push   %edi
5a2211:	89 4d f4             	mov    %ecx,-0xc(%ebp)
5a2214:	89 55 f8             	mov    %edx,-0x8(%ebp)
5a2217:	89 45 fc             	mov    %eax,-0x4(%ebp)
5a221a:	33 c0                	xor    %eax,%eax
5a221c:	89 45 f0             	mov    %eax,-0x10(%ebp)
5a221f:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
5a2223:	0f 84 c5 01 00 00    	je     0x5a23ee
5a2229:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a222c:	3b 45 f4             	cmp    -0xc(%ebp),%eax
5a222f:	7d 10                	jge    0x5a2241
5a2231:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a2234:	b9 0a 00 00 00       	mov    $0xa,%ecx
5a2239:	99                   	cltd
5a223a:	f7 f9                	idiv   %ecx
5a223c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5a223f:	eb 05                	jmp    0x5a2246
5a2241:	33 c0                	xor    %eax,%eax
5a2243:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5a2246:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5a2249:	b9 14 00 00 00       	mov    $0x14,%ecx
5a224e:	99                   	cltd
5a224f:	f7 f9                	idiv   %ecx
5a2251:	8b f0                	mov    %eax,%esi
5a2253:	83 fe 02             	cmp    $0x2,%esi
5a2256:	7d 05                	jge    0x5a225d
5a2258:	be 02 00 00 00       	mov    $0x2,%esi
5a225d:	33 c0                	xor    %eax,%eax
5a225f:	89 45 e8             	mov    %eax,-0x18(%ebp)
5a2262:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a2265:	3b 45 10             	cmp    0x10(%ebp),%eax
5a2268:	0f 8d 80 01 00 00    	jge    0x5a23ee
5a226e:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
5a2272:	0f 85 a4 00 00 00    	jne    0x5a231c
5a2278:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a227b:	03 c6                	add    %esi,%eax
5a227d:	50                   	push   %eax
5a227e:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a2281:	50                   	push   %eax
5a2282:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a2285:	50                   	push   %eax
5a2286:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a2289:	2b 45 fc             	sub    -0x4(%ebp),%eax
5a228c:	50                   	push   %eax
5a228d:	e8 4e 52 e6 ff       	call   0x4074e0
5a2292:	89 45 e0             	mov    %eax,-0x20(%ebp)
5a2295:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5a2298:	99                   	cltd
5a2299:	f7 fe                	idiv   %esi
5a229b:	8b d8                	mov    %eax,%ebx
5a229d:	83 fb 01             	cmp    $0x1,%ebx
5a22a0:	0f 8c 06 01 00 00    	jl     0x5a23ac
5a22a6:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5a22a9:	8d 04 40             	lea    (%eax,%eax,2),%eax
5a22ac:	99                   	cltd
5a22ad:	f7 fe                	idiv   %esi
5a22af:	85 c0                	test   %eax,%eax
5a22b1:	79 03                	jns    0x5a22b6
5a22b3:	83 c0 03             	add    $0x3,%eax
5a22b6:	c1 f8 02             	sar    $0x2,%eax
5a22b9:	3b d8                	cmp    %eax,%ebx
5a22bb:	7e 04                	jle    0x5a22c1
5a22bd:	33 ff                	xor    %edi,%edi
5a22bf:	eb 05                	jmp    0x5a22c6
5a22c1:	bf 01 00 00 00       	mov    $0x1,%edi
5a22c6:	8b c3                	mov    %ebx,%eax
5a22c8:	e8 93 0f e6 ff       	call   0x403260
5a22cd:	3b f8                	cmp    %eax,%edi
5a22cf:	7c 41                	jl     0x5a2312
5a22d1:	8b 45 f4             	mov    -0xc(%ebp),%eax
5a22d4:	2b 45 fc             	sub    -0x4(%ebp),%eax
5a22d7:	8b d3                	mov    %ebx,%edx
5a22d9:	0f af d6             	imul   %esi,%edx
5a22dc:	2b c2                	sub    %edx,%eax
5a22de:	89 45 ec             	mov    %eax,-0x14(%ebp)
5a22e1:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a22e4:	03 c6                	add    %esi,%eax
5a22e6:	50                   	push   %eax
5a22e7:	8b 45 ec             	mov    -0x14(%ebp),%eax
5a22ea:	03 c6                	add    %esi,%eax
5a22ec:	50                   	push   %eax
5a22ed:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a22f0:	50                   	push   %eax
5a22f1:	8b 45 ec             	mov    -0x14(%ebp),%eax
5a22f4:	50                   	push   %eax
5a22f5:	e8 e6 51 e6 ff       	call   0x4074e0
5a22fa:	8b f8                	mov    %eax,%edi
5a22fc:	6a 02                	push   $0x2
5a22fe:	57                   	push   %edi
5a22ff:	8b 45 e0             	mov    -0x20(%ebp),%eax
5a2302:	50                   	push   %eax
5a2303:	8b 45 e0             	mov    -0x20(%ebp),%eax
5a2306:	50                   	push   %eax
5a2307:	e8 3c 51 e6 ff       	call   0x407448
5a230c:	57                   	push   %edi
5a230d:	e8 fe 51 e6 ff       	call   0x407510
5a2312:	4b                   	dec    %ebx
5a2313:	85 db                	test   %ebx,%ebx
5a2315:	75 8f                	jne    0x5a22a6
5a2317:	e9 90 00 00 00       	jmp    0x5a23ac
5a231c:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a231f:	03 c6                	add    %esi,%eax
5a2321:	50                   	push   %eax
5a2322:	8b 45 fc             	mov    -0x4(%ebp),%eax
5a2325:	50                   	push   %eax
5a2326:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a2329:	50                   	push   %eax
5a232a:	6a 00                	push   $0x0
5a232c:	e8 af 51 e6 ff       	call   0x4074e0
5a2331:	89 45 e0             	mov    %eax,-0x20(%ebp)
5a2334:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5a2337:	99                   	cltd
5a2338:	f7 fe                	idiv   %esi
5a233a:	8b d8                	mov    %eax,%ebx
5a233c:	83 fb 01             	cmp    $0x1,%ebx
5a233f:	7c 6b                	jl     0x5a23ac
5a2341:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5a2344:	8d 04 40             	lea    (%eax,%eax,2),%eax
5a2347:	99                   	cltd
5a2348:	f7 fe                	idiv   %esi
5a234a:	85 c0                	test   %eax,%eax
5a234c:	79 03                	jns    0x5a2351
5a234e:	83 c0 03             	add    $0x3,%eax
5a2351:	c1 f8 02             	sar    $0x2,%eax
5a2354:	3b d8                	cmp    %eax,%ebx
5a2356:	7e 04                	jle    0x5a235c
5a2358:	33 ff                	xor    %edi,%edi
5a235a:	eb 05                	jmp    0x5a2361
5a235c:	bf 01 00 00 00       	mov    $0x1,%edi
5a2361:	8b c3                	mov    %ebx,%eax
5a2363:	e8 f8 0e e6 ff       	call   0x403260
5a2368:	3b f8                	cmp    %eax,%edi
5a236a:	7c 3b                	jl     0x5a23a7
5a236c:	8b c3                	mov    %ebx,%eax
5a236e:	f7 ee                	imul   %esi
5a2370:	03 45 fc             	add    -0x4(%ebp),%eax
5a2373:	89 45 ec             	mov    %eax,-0x14(%ebp)
5a2376:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a2379:	03 c6                	add    %esi,%eax
5a237b:	50                   	push   %eax
5a237c:	8b 45 ec             	mov    -0x14(%ebp),%eax
5a237f:	50                   	push   %eax
5a2380:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a2383:	50                   	push   %eax
5a2384:	8b 45 ec             	mov    -0x14(%ebp),%eax
5a2387:	2b c6                	sub    %esi,%eax
5a2389:	50                   	push   %eax
5a238a:	e8 51 51 e6 ff       	call   0x4074e0
5a238f:	8b f8                	mov    %eax,%edi
5a2391:	6a 02                	push   $0x2
5a2393:	57                   	push   %edi
5a2394:	8b 45 e0             	mov    -0x20(%ebp),%eax
5a2397:	50                   	push   %eax
5a2398:	8b 45 e0             	mov    -0x20(%ebp),%eax
5a239b:	50                   	push   %eax
5a239c:	e8 a7 50 e6 ff       	call   0x407448
5a23a1:	57                   	push   %edi
5a23a2:	e8 69 51 e6 ff       	call   0x407510
5a23a7:	4b                   	dec    %ebx
5a23a8:	85 db                	test   %ebx,%ebx
5a23aa:	75 95                	jne    0x5a2341
5a23ac:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
5a23b0:	74 1e                	je     0x5a23d0
5a23b2:	6a 02                	push   $0x2
5a23b4:	8b 45 e0             	mov    -0x20(%ebp),%eax
5a23b7:	50                   	push   %eax
5a23b8:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a23bb:	50                   	push   %eax
5a23bc:	8b 45 f0             	mov    -0x10(%ebp),%eax
5a23bf:	50                   	push   %eax
5a23c0:	e8 83 50 e6 ff       	call   0x407448
5a23c5:	8b 45 e0             	mov    -0x20(%ebp),%eax
5a23c8:	50                   	push   %eax
5a23c9:	e8 42 51 e6 ff       	call   0x407510
5a23ce:	eb 06                	jmp    0x5a23d6
5a23d0:	8b 45 e0             	mov    -0x20(%ebp),%eax
5a23d3:	89 45 f0             	mov    %eax,-0x10(%ebp)
5a23d6:	8b c6                	mov    %esi,%eax
5a23d8:	d1 f8                	sar    $1,%eax
5a23da:	79 03                	jns    0x5a23df
5a23dc:	83 d0 00             	adc    $0x0,%eax
5a23df:	01 45 e8             	add    %eax,-0x18(%ebp)
5a23e2:	8b 45 e8             	mov    -0x18(%ebp),%eax
5a23e5:	3b 45 10             	cmp    0x10(%ebp),%eax
5a23e8:	0f 8c 80 fe ff ff    	jl     0x5a226e
5a23ee:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5a23f2:	0f 84 c5 01 00 00    	je     0x5a25bd
5a23f8:	8b 45 f8             	mov    -0x8(%ebp),%eax
5a23fb:	3b 45 10             	cmp    0x10(%ebp),%eax
5a23fe:	7d 10                	jge    0x5a2410
5a2400:	8b 45 10             	mov    0x10(%ebp),%eax
5a2403:	b9 0a 00 00 00       	mov    $0xa,%ecx
5a2408:	99                   	cltd
5a2409:	f7 f9                	idiv   %ecx
5a240b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5a240e:	eb 05                	jmp    0x5a2415
5a2410:	33 c0                	xor    %eax,%eax
5a2412:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5a2415:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5a2418:	b9 14 00 00 00       	mov    $0x14,%ecx
5a241d:	99                   	cltd
5a241e:	f7 f9                	idiv   %ecx
5a2420:	8b f0                	mov    %eax,%esi
5a2422:	83 fe 02             	cmp    $0x2,%esi
5a2425:	7d 05                	jge    0x5a242c
5a2427:	be 02 00 00 00       	mov    $0x2,%esi
5a242c:	33 c0                	xor    %eax,%eax
5a242e:	89 45 ec             	mov    %eax,-0x14(%ebp)
5a2431:	8b 45 ec             	mov    -0x14(%ebp),%eax
5a2434:	3b 45 f4             	cmp    -0xc(%ebp),%eax
5a2437:	0f 8d 80 01 00 00    	jge    0x5a25bd
5a243d:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
5a2441:	0f 85 a4 00 00 00    	jne    0x5a24eb
5a2447:	8b 45 10             	mov    0x10(%ebp),%eax
5a244a:	50                   	push   %eax
5a244b:	8b 45 ec             	mov    -0x14(%ebp),%eax
5a244e:	03 c6                	add    %esi,%eax
5a2450:	50                   	push   %eax
5a2451:	8b 45 10             	mov    0x10(%ebp),%eax
5a2454:	2b 45 f8             	sub    -0x8(%ebp),%eax
5a2457:	50                   	push   %eax