521e97:	8d 44 24 38          	lea    0x38(%esp),%eax
521e9b:	50                   	push   %eax
521e9c:	8d 44 24 14          	lea    0x14(%esp),%eax
521ea0:	50                   	push   %eax
521ea1:	e8 9a 0f 00 00       	call   0x522e40
521ea6:	83 c4 14             	add    $0x14,%esp
521ea9:	be 31 00 00 00       	mov    $0x31,%esi
521eae:	66 90                	xchg   %ax,%ax
521eb0:	8d 44 24 04          	lea    0x4(%esp),%eax
521eb4:	50                   	push   %eax
521eb5:	50                   	push   %eax
521eb6:	e8 85 0f 00 00       	call   0x522e40
521ebb:	83 c4 08             	add    $0x8,%esp
521ebe:	83 ee 01             	sub    $0x1,%esi
521ec1:	75 ed                	jne    0x521eb0
521ec3:	8d 44 24 2c          	lea    0x2c(%esp),%eax
521ec7:	50                   	push   %eax
521ec8:	8d 44 24 08          	lea    0x8(%esp),%eax
521ecc:	50                   	push   %eax
521ecd:	50                   	push   %eax
521ece:	e8 dd 00 00 00       	call   0x521fb0
521ed3:	8d 44 24 10          	lea    0x10(%esp),%eax
521ed7:	50                   	push   %eax
521ed8:	8d 44 24 64          	lea    0x64(%esp),%eax
521edc:	50                   	push   %eax
521edd:	e8 5e 0f 00 00       	call   0x522e40
521ee2:	83 c4 14             	add    $0x14,%esp
521ee5:	be 63 00 00 00       	mov    $0x63,%esi
521eea:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
521ef0:	8d 44 24 54          	lea    0x54(%esp),%eax
521ef4:	50                   	push   %eax
521ef5:	50                   	push   %eax
521ef6:	e8 45 0f 00 00       	call   0x522e40
521efb:	83 c4 08             	add    $0x8,%esp
521efe:	83 ee 01             	sub    $0x1,%esi
521f01:	75 ed                	jne    0x521ef0
521f03:	8d 44 24 04          	lea    0x4(%esp),%eax
521f07:	50                   	push   %eax
521f08:	8d 44 24 58          	lea    0x58(%esp),%eax
521f0c:	50                   	push   %eax
521f0d:	8d 44 24 0c          	lea    0xc(%esp),%eax
521f11:	50                   	push   %eax
521f12:	e8 99 00 00 00       	call   0x521fb0
521f17:	8d 44 24 10          	lea    0x10(%esp),%eax
521f1b:	50                   	push   %eax
521f1c:	50                   	push   %eax
521f1d:	e8 1e 0f 00 00       	call   0x522e40
521f22:	83 c4 14             	add    $0x14,%esp
521f25:	be 31 00 00 00       	mov    $0x31,%esi
521f2a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
521f30:	8d 44 24 04          	lea    0x4(%esp),%eax
521f34:	50                   	push   %eax
521f35:	50                   	push   %eax
521f36:	e8 05 0f 00 00       	call   0x522e40
521f3b:	83 c4 08             	add    $0x8,%esp
521f3e:	83 ee 01             	sub    $0x1,%esi
521f41:	75 ed                	jne    0x521f30
521f43:	8d 44 24 2c          	lea    0x2c(%esp),%eax
521f47:	50                   	push   %eax
521f48:	8d 44 24 08          	lea    0x8(%esp),%eax
521f4c:	50                   	push   %eax
521f4d:	8d 44 24 34          	lea    0x34(%esp),%eax
521f51:	50                   	push   %eax
521f52:	e8 59 00 00 00       	call   0x521fb0
521f57:	8d 44 24 38          	lea    0x38(%esp),%eax
521f5b:	50                   	push   %eax
521f5c:	50                   	push   %eax
521f5d:	e8 de 0e 00 00       	call   0x522e40
521f62:	83 c4 14             	add    $0x14,%esp
521f65:	be 04 00 00 00       	mov    $0x4,%esi
521f6a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
521f70:	8d 44 24 2c          	lea    0x2c(%esp),%eax
521f74:	50                   	push   %eax
521f75:	50                   	push   %eax
521f76:	e8 c5 0e 00 00       	call   0x522e40
521f7b:	83 c4 08             	add    $0x8,%esp
521f7e:	83 ee 01             	sub    $0x1,%esi
521f81:	75 ed                	jne    0x521f70
521f83:	8d 44 24 7c          	lea    0x7c(%esp),%eax
521f87:	50                   	push   %eax
521f88:	8d 44 24 30          	lea    0x30(%esp),%eax
521f8c:	50                   	push   %eax
521f8d:	ff b4 24 b0 00 00 00 	push   0xb0(%esp)
521f94:	e8 17 00 00 00       	call   0x521fb0
521f99:	83 c4 0c             	add    $0xc,%esp
521f9c:	5e                   	pop    %esi
521f9d:	81 c4 a0 00 00 00    	add    $0xa0,%esp
521fa3:	c3                   	ret
521fa4:	cc                   	int3
521fa5:	cc                   	int3
521fa6:	cc                   	int3
521fa7:	cc                   	int3
521fa8:	cc                   	int3
521fa9:	cc                   	int3
521faa:	cc                   	int3
521fab:	cc                   	int3
521fac:	cc                   	int3
521fad:	cc                   	int3
521fae:	cc                   	int3
521faf:	cc                   	int3
521fb0:	b8 a4 00 00 00       	mov    $0xa4,%eax
521fb5:	e8 f6 f7 0a 00       	call   0x5d17b0
521fba:	8b 84 24 ac 00 00 00 	mov    0xac(%esp),%eax
521fc1:	53                   	push   %ebx
521fc2:	55                   	push   %ebp
521fc3:	56                   	push   %esi
521fc4:	8b 08                	mov    (%eax),%ecx
521fc6:	8b 50 24             	mov    0x24(%eax),%edx
521fc9:	89 4c 24 40          	mov    %ecx,0x40(%esp)
521fcd:	8b 48 04             	mov    0x4(%eax),%ecx
521fd0:	89 4c 24 3c          	mov    %ecx,0x3c(%esp)
521fd4:	8b 48 08             	mov    0x8(%eax),%ecx
521fd7:	89 4c 24 38          	mov    %ecx,0x38(%esp)
521fdb:	8b 48 0c             	mov    0xc(%eax),%ecx
521fde:	89 4c 24 34          	mov    %ecx,0x34(%esp)
521fe2:	8b 48 10             	mov    0x10(%eax),%ecx
521fe5:	89 4c 24 30          	mov    %ecx,0x30(%esp)
521fe9:	8b 48 14             	mov    0x14(%eax),%ecx
521fec:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
521ff0:	8b 48 18             	mov    0x18(%eax),%ecx
521ff3:	89 4c 24 28          	mov    %ecx,0x28(%esp)
521ff7:	8b 48 1c             	mov    0x1c(%eax),%ecx
521ffa:	89 4c 24 24          	mov    %ecx,0x24(%esp)
521ffe:	8b 48 20             	mov    0x20(%eax),%ecx
522001:	8b 84 24 bc 00 00 00 	mov    0xbc(%esp),%eax
522008:	89 4c 24 20          	mov    %ecx,0x20(%esp)
52200c:	57                   	push   %edi
52200d:	89 54 24 4c          	mov    %edx,0x4c(%esp)
522011:	8b 70 14             	mov    0x14(%eax),%esi
522014:	8b 08                	mov    (%eax),%ecx
522016:	8b 58 08             	mov    0x8(%eax),%ebx
522019:	8b 68 0c             	mov    0xc(%eax),%ebp
52201c:	8b 78 10             	mov    0x10(%eax),%edi
52201f:	89 74 24 70          	mov    %esi,0x70(%esp)
522023:	8b 70 18             	mov    0x18(%eax),%esi
522026:	89 74 24 78          	mov    %esi,0x78(%esp)
52202a:	8b 70 1c             	mov    0x1c(%eax),%esi
52202d:	89 4c 24 20          	mov    %ecx,0x20(%esp)
522031:	8b 48 04             	mov    0x4(%eax),%ecx
522034:	89 b4 24 84 00 00 00 	mov    %esi,0x84(%esp)
52203b:	8b 70 20             	mov    0x20(%eax),%esi
52203e:	8b 40 24             	mov    0x24(%eax),%eax
522041:	89 84 24 98 00 00 00 	mov    %eax,0x98(%esp)
522048:	6b 44 24 78 13       	imul   $0x13,0x78(%esp),%eax
52204d:	89 b4 24 8c 00 00 00 	mov    %esi,0x8c(%esp)
522054:	89 4c 24 50          	mov    %ecx,0x50(%esp)
522058:	6b c9 13             	imul   $0x13,%ecx,%ecx
52205b:	6b f3 13             	imul   $0x13,%ebx,%esi
52205e:	89 44 24 74          	mov    %eax,0x74(%esp)
522062:	6b 84 24 84 00 00 00 	imul   $0x13,0x84(%esp),%eax
522069:	13
52206a:	89 5c 24 58          	mov    %ebx,0x58(%esp)
52206e:	6b dd 13             	imul   $0x13,%ebp,%ebx
522071:	89 6c 24 68          	mov    %ebp,0x68(%esp)
522075:	6b ef 13             	imul   $0x13,%edi,%ebp
522078:	89 44 24 64          	mov    %eax,0x64(%esp)
52207c:	6b 84 24 8c 00 00 00 	imul   $0x13,0x8c(%esp),%eax
522083:	13
522084:	89 7c 24 6c          	mov    %edi,0x6c(%esp)
522088:	6b 7c 24 70 13       	imul   $0x13,0x70(%esp),%edi
52208d:	89 ac 24 80 00 00 00 	mov    %ebp,0x80(%esp)
522094:	89 44 24 54          	mov    %eax,0x54(%esp)
522098:	6b 84 24 98 00 00 00 	imul   $0x13,0x98(%esp),%eax
52209f:	13
5220a0:	89 7c 24 7c          	mov    %edi,0x7c(%esp)
5220a4:	89 44 24 48          	mov    %eax,0x48(%esp)
5220a8:	8d 04 12             	lea    (%edx,%edx,1),%eax
5220ab:	f7 e9                	imul   %ecx
5220ad:	8b 4c 24 40          	mov    0x40(%esp),%ecx
5220b1:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5220b5:	89 54 24 14          	mov    %edx,0x14(%esp)
5220b9:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
5220bc:	8b 4c 24 38          	mov    0x38(%esp),%ecx
5220c0:	f7 6c 24 48          	imull  0x48(%esp)
5220c4:	01 44 24 1c          	add    %eax,0x1c(%esp)
5220c8:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
5220cb:	8b 4c 24 30          	mov    0x30(%esp),%ecx
5220cf:	11 54 24 14          	adc    %edx,0x14(%esp)
5220d3:	f7 6c 24 64          	imull  0x64(%esp)
5220d7:	01 44 24 1c          	add    %eax,0x1c(%esp)
5220db:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
5220de:	11 54 24 14          	adc    %edx,0x14(%esp)
5220e2:	f7 ef                	imul   %edi
5220e4:	01 44 24 1c          	add    %eax,0x1c(%esp)
5220e8:	11 54 24 14          	adc    %edx,0x14(%esp)
5220ec:	8b 4c 24 28          	mov    0x28(%esp),%ecx
5220f0:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
5220f3:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
5220f7:	f7 eb                	imul   %ebx
5220f9:	03 c8                	add    %eax,%ecx
5220fb:	8b c6                	mov    %esi,%eax
5220fd:	11 54 24 14          	adc    %edx,0x14(%esp)
522101:	f7 6c 24 24          	imull  0x24(%esp)
522105:	03 c8                	add    %eax,%ecx
522107:	8b c5                	mov    %ebp,%eax
522109:	11 54 24 14          	adc    %edx,0x14(%esp)
52210d:	f7 6c 24 2c          	imull  0x2c(%esp)
522111:	03 c8                	add    %eax,%ecx
522113:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
522117:	11 54 24 14          	adc    %edx,0x14(%esp)
52211b:	8b 4c 24 74          	mov    0x74(%esp),%ecx
52211f:	8b c1                	mov    %ecx,%eax
522121:	f7 6c 24 34          	imull  0x34(%esp)
522125:	01 44 24 1c          	add    %eax,0x1c(%esp)
522129:	8b 44 24 54          	mov    0x54(%esp),%eax
52212d:	11 54 24 14          	adc    %edx,0x14(%esp)
522131:	f7 6c 24 3c          	imull  0x3c(%esp)
522135:	01 44 24 1c          	add    %eax,0x1c(%esp)
522139:	8b 44 24 20          	mov    0x20(%esp),%eax
52213d:	11 54 24 14          	adc    %edx,0x14(%esp)
522141:	f7 6c 24 44          	imull  0x44(%esp)
522145:	01 44 24 1c          	add    %eax,0x1c(%esp)
522149:	11 54 24 14          	adc    %edx,0x14(%esp)
52214d:	8b 54 24 30          	mov    0x30(%esp),%edx
522151:	8d 04 12             	lea    (%edx,%edx,1),%eax
522154:	f7 6c 24 48          	imull  0x48(%esp)
522158:	89 44 24 60          	mov    %eax,0x60(%esp)
52215c:	89 54 24 10          	mov    %edx,0x10(%esp)
522160:	8b 54 24 28          	mov    0x28(%esp),%edx
522164:	8d 04 12             	lea    (%edx,%edx,1),%eax
522167:	f7 6c 24 64          	imull  0x64(%esp)
52216b:	01 44 24 60          	add    %eax,0x60(%esp)
52216f:	11 54 24 10          	adc    %edx,0x10(%esp)
522173:	8b 54 24 4c          	mov    0x4c(%esp),%edx
522177:	8d 04 12             	lea    (%edx,%edx,1),%eax
52217a:	f7 ef                	imul   %edi
52217c:	8b 7c 24 60          	mov    0x60(%esp),%edi
522180:	03 f8                	add    %eax,%edi
522182:	11 54 24 10          	adc    %edx,0x10(%esp)
522186:	8b 54 24 40          	mov    0x40(%esp),%edx
52218a:	8d 04 12             	lea    (%edx,%edx,1),%eax
52218d:	f7 6c 24 68          	imull  0x68(%esp)
522191:	03 f8                	add    %eax,%edi
522193:	11 54 24 10          	adc    %edx,0x10(%esp)
522197:	8b 54 24 38          	mov    0x38(%esp),%edx
52219b:	8d 04 12             	lea    (%edx,%edx,1),%eax
52219e:	f7 6c 24 50          	imull  0x50(%esp)
5221a2:	03 f8                	add    %eax,%edi
5221a4:	8b c1                	mov    %ecx,%eax
5221a6:	11 54 24 10          	adc    %edx,0x10(%esp)
5221aa:	f7 6c 24 24          	imull  0x24(%esp)
5221ae:	03 f8                	add    %eax,%edi
5221b0:	8b 44 24 54          	mov    0x54(%esp),%eax
5221b4:	11 54 24 10          	adc    %edx,0x10(%esp)
5221b8:	f7 6c 24 2c          	imull  0x2c(%esp)
5221bc:	03 f8                	add    %eax,%edi
5221be:	8b 44 24 20          	mov    0x20(%esp),%eax
5221c2:	11 54 24 10          	adc    %edx,0x10(%esp)
5221c6:	f7 6c 24 34          	imull  0x34(%esp)
5221ca:	03 f8                	add    %eax,%edi
5221cc:	8b 44 24 58          	mov    0x58(%esp),%eax
5221d0:	11 54 24 10          	adc    %edx,0x10(%esp)
5221d4:	f7 6c 24 3c          	imull  0x3c(%esp)
5221d8:	03 f8                	add    %eax,%edi
5221da:	8b 44 24 6c          	mov    0x6c(%esp),%eax
5221de:	11 54 24 10          	adc    %edx,0x10(%esp)
5221e2:	f7 6c 24 44          	imull  0x44(%esp)
5221e6:	03 f8                	add    %eax,%edi
5221e8:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5221ec:	89 7c 24 60          	mov    %edi,0x60(%esp)
5221f0:	11 54 24 10          	adc    %edx,0x10(%esp)
5221f4:	05 00 00 00 02       	add    $0x2000000,%eax
5221f9:	89 84 24 9c 00 00 00 	mov    %eax,0x9c(%esp)
522200:	8b 44 24 14          	mov    0x14(%esp),%eax
522204:	83 d0 00             	adc    $0x0,%eax
522207:	89 84 24 a0 00 00 00 	mov    %eax,0xa0(%esp)
52220e:	8b 44 24 48          	mov    0x48(%esp),%eax
522212:	f7 6c 24 3c          	imull  0x3c(%esp)
522216:	89 84 24 88 00 00 00 	mov    %eax,0x88(%esp)
52221d:	8b fa                	mov    %edx,%edi
52221f:	8b c6                	mov    %esi,%eax
522221:	8b b4 24 88 00 00 00 	mov    0x88(%esp),%esi
522228:	f7 6c 24 4c          	imull  0x4c(%esp)
52222c:	03 f0                	add    %eax,%esi
52222e:	8b c3                	mov    %ebx,%eax
522230:	13 fa                	adc    %edx,%edi
522232:	f7 6c 24 24          	imull  0x24(%esp)
522236:	03 f0                	add    %eax,%esi
522238:	8b c5                	mov    %ebp,%eax
52223a:	8b 6c 24 60          	mov    0x60(%esp),%ebp
52223e:	13 fa                	adc    %edx,%edi
522240:	f7 6c 24 28          	imull  0x28(%esp)
522244:	03 f0                	add    %eax,%esi
522246:	8b 44 24 7c          	mov    0x7c(%esp),%eax
52224a:	13 fa                	adc    %edx,%edi
52224c:	f7 6c 24 2c          	imull  0x2c(%esp)
522250:	03 f0                	add    %eax,%esi
522252:	8b c1                	mov    %ecx,%eax
522254:	8b 8c 24 a0 00 00 00 	mov    0xa0(%esp),%ecx
52225b:	13 fa                	adc    %edx,%edi
52225d:	f7 6c 24 30          	imull  0x30(%esp)
522261:	03 f0                	add    %eax,%esi
522263:	8b 44 24 64          	mov    0x64(%esp),%eax
522267:	13 fa                	adc    %edx,%edi
522269:	f7 6c 24 34          	imull  0x34(%esp)
52226d:	03 f0                	add    %eax,%esi
52226f:	8b 44 24 54          	mov    0x54(%esp),%eax
522273:	13 fa                	adc    %edx,%edi
522275:	f7 6c 24 38          	imull  0x38(%esp)
522279:	03 f0                	add    %eax,%esi
52227b:	8b 44 24 20          	mov    0x20(%esp),%eax
52227f:	13 fa                	adc    %edx,%edi
522281:	f7 6c 24 40          	imull  0x40(%esp)
522285:	03 f0                	add    %eax,%esi
522287:	8b 44 24 50          	mov    0x50(%esp),%eax
52228b:	13 fa                	adc    %edx,%edi
52228d:	f7 6c 24 44          	imull  0x44(%esp)
522291:	03 f0                	add    %eax,%esi
522293:	8b 84 24 9c 00 00 00 	mov    0x9c(%esp),%eax
52229a:	13 fa                	adc    %edx,%edi
52229c:	0f ac c8 1a          	shrd   $0x1a,%ecx,%eax
5222a0:	c1 f9 1a             	sar    $0x1a,%ecx
5222a3:	03 f0                	add    %eax,%esi
5222a5:	8b 44 24 48          	mov    0x48(%esp),%eax
5222a9:	13 f9                	adc    %ecx,%edi
5222ab:	89 b4 24 88 00 00 00 	mov    %esi,0x88(%esp)
5222b2:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5222b6:	81 c5 00 00 00 02    	add    $0x2000000,%ebp
5222bc:	89 ac 24 90 00 00 00 	mov    %ebp,0x90(%esp)
5222c3:	83 d1 00             	adc    $0x0,%ecx
5222c6:	f7 6c 24 2c          	imull  0x2c(%esp)
5222ca:	89 8c 24 94 00 00 00 	mov    %ecx,0x94(%esp)
5222d1:	89 44 24 18          	mov    %eax,0x18(%esp)
5222d5:	8b f2                	mov    %edx,%esi
5222d7:	8b 44 24 74          	mov    0x74(%esp),%eax
5222db:	f7 6c 24 4c          	imull  0x4c(%esp)
5222df:	01 44 24 18          	add    %eax,0x18(%esp)
5222e3:	8b 44 24 64          	mov    0x64(%esp),%eax
5222e7:	13 f2                	adc    %edx,%esi
5222e9:	f7 6c 24 24          	imull  0x24(%esp)
5222ed:	01 44 24 18          	add    %eax,0x18(%esp)
5222f1:	8b 44 24 54          	mov    0x54(%esp),%eax
5222f5:	13 f2                	adc    %edx,%esi
5222f7:	f7 6c 24 28          	imull  0x28(%esp)
5222fb:	01 44 24 18          	add    %eax,0x18(%esp)
5222ff:	8b 44 24 20          	mov    0x20(%esp),%eax
522303:	13 f2                	adc    %edx,%esi
522305:	f7 6c 24 30          	imull  0x30(%esp)
522309:	01 44 24 18          	add    %eax,0x18(%esp)
52230d:	8b 44 24 50          	mov    0x50(%esp),%eax
522311:	13 f2                	adc    %edx,%esi
522313:	f7 6c 24 34          	imull  0x34(%esp)
522317:	01 44 24 18          	add    %eax,0x18(%esp)
52231b:	8b 44 24 58          	mov    0x58(%esp),%eax
52231f:	13 f2                	adc    %edx,%esi
522321:	f7 6c 24 38          	imull  0x38(%esp)
522325:	01 44 24 18          	add    %eax,0x18(%esp)
522329:	8b 44 24 68          	mov    0x68(%esp),%eax
52232d:	13 f2                	adc    %edx,%esi
52232f:	f7 6c 24 3c          	imull  0x3c(%esp)