435f01:	ff 75 10             	push   0x10(%ebp)
435f04:	e8 17 fc ff ff       	call   0x435b20
435f09:	83 c4 1c             	add    $0x1c,%esp
435f0c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
435f0f:	83 f8 ff             	cmp    $0xffffffff,%eax
435f12:	75 32                	jne    0x435f46
435f14:	8b 0f                	mov    (%edi),%ecx
435f16:	8b c1                	mov    %ecx,%eax
435f18:	c1 f8 05             	sar    $0x5,%eax
435f1b:	83 e1 1f             	and    $0x1f,%ecx
435f1e:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
435f25:	c1 e1 06             	shl    $0x6,%ecx
435f28:	80 64 08 04 fe       	andb   $0xfe,0x4(%eax,%ecx,1)
435f2d:	ff 15 10 d3 48 00    	call   *0x48d310
435f33:	50                   	push   %eax
435f34:	e8 b4 1c ff ff       	call   0x427bed
435f39:	59                   	pop    %ecx
435f3a:	e8 cf 1c ff ff       	call   0x427c0e
435f3f:	8b 18                	mov    (%eax),%ebx
435f41:	e9 71 04 00 00       	jmp    0x4363b7
435f46:	50                   	push   %eax
435f47:	ff 15 a0 d3 48 00    	call   *0x48d3a0
435f4d:	85 c0                	test   %eax,%eax
435f4f:	75 42                	jne    0x435f93
435f51:	8b 0f                	mov    (%edi),%ecx
435f53:	8b c1                	mov    %ecx,%eax
435f55:	c1 f8 05             	sar    $0x5,%eax
435f58:	83 e1 1f             	and    $0x1f,%ecx
435f5b:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
435f62:	c1 e1 06             	shl    $0x6,%ecx
435f65:	80 64 08 04 fe       	andb   $0xfe,0x4(%eax,%ecx,1)
435f6a:	ff 15 10 d3 48 00    	call   *0x48d310
435f70:	8b f0                	mov    %eax,%esi
435f72:	56                   	push   %esi
435f73:	e8 75 1c ff ff       	call   0x427bed
435f78:	59                   	pop    %ecx
435f79:	ff 75 e4             	push   -0x1c(%ebp)
435f7c:	ff 15 0c d3 48 00    	call   *0x48d30c
435f82:	85 f6                	test   %esi,%esi
435f84:	75 b4                	jne    0x435f3a
435f86:	e8 83 1c ff ff       	call   0x427c0e
435f8b:	c7 00 0d 00 00 00    	movl   $0xd,(%eax)
435f91:	eb a7                	jmp    0x435f3a
435f93:	83 f8 02             	cmp    $0x2,%eax
435f96:	75 06                	jne    0x435f9e
435f98:	80 4d ff 40          	orb    $0x40,-0x1(%ebp)
435f9c:	eb 09                	jmp    0x435fa7
435f9e:	83 f8 03             	cmp    $0x3,%eax
435fa1:	75 04                	jne    0x435fa7
435fa3:	80 4d ff 08          	orb    $0x8,-0x1(%ebp)
435fa7:	ff 75 e4             	push   -0x1c(%ebp)
435faa:	ff 37                	push   (%edi)
435fac:	e8 5a 4c ff ff       	call   0x42ac0b
435fb1:	8a 55 ff             	mov    -0x1(%ebp),%dl
435fb4:	59                   	pop    %ecx
435fb5:	59                   	pop    %ecx
435fb6:	8b 0f                	mov    (%edi),%ecx
435fb8:	8b c1                	mov    %ecx,%eax
435fba:	c1 f8 05             	sar    $0x5,%eax
435fbd:	83 e1 1f             	and    $0x1f,%ecx
435fc0:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
435fc7:	c1 e1 06             	shl    $0x6,%ecx
435fca:	80 ca 01             	or     $0x1,%dl
435fcd:	88 54 08 04          	mov    %dl,0x4(%eax,%ecx,1)
435fd1:	8b 0f                	mov    (%edi),%ecx
435fd3:	8b c1                	mov    %ecx,%eax
435fd5:	c1 f8 05             	sar    $0x5,%eax
435fd8:	83 e1 1f             	and    $0x1f,%ecx
435fdb:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
435fe2:	c1 e1 06             	shl    $0x6,%ecx
435fe5:	88 55 ff             	mov    %dl,-0x1(%ebp)
435fe8:	80 64 08 24 80       	andb   $0x80,0x24(%eax,%ecx,1)
435fed:	8b 4d 14             	mov    0x14(%ebp),%ecx
435ff0:	8a c2                	mov    %dl,%al
435ff2:	24 48                	and    $0x48,%al
435ff4:	88 45 fd             	mov    %al,-0x3(%ebp)
435ff7:	0f 85 96 00 00 00    	jne    0x436093
435ffd:	84 d2                	test   %dl,%dl
435fff:	0f 89 b2 02 00 00    	jns    0x4362b7
436005:	f6 c1 02             	test   $0x2,%cl
436008:	0f 84 85 00 00 00    	je     0x436093
43600e:	6a 02                	push   $0x2
436010:	6a ff                	push   $0xffffffff
436012:	6a ff                	push   $0xffffffff
436014:	ff 37                	push   (%edi)
436016:	e8 14 98 ff ff       	call   0x42f82f
43601b:	8b c8                	mov    %eax,%ecx
43601d:	23 ca                	and    %edx,%ecx
43601f:	83 c4 10             	add    $0x10,%esp
436022:	89 45 d4             	mov    %eax,-0x2c(%ebp)
436025:	89 55 ec             	mov    %edx,-0x14(%ebp)
436028:	83 f9 ff             	cmp    $0xffffffff,%ecx
43602b:	75 19                	jne    0x436046
43602d:	e8 a8 1b ff ff       	call   0x427bda
436032:	81 38 83 00 00 00    	cmpl   $0x83,(%eax)
436038:	74 53                	je     0x43608d
43603a:	ff 37                	push   (%edi)
43603c:	e8 5b 8a ff ff       	call   0x42ea9c
436041:	e9 f3 fe ff ff       	jmp    0x435f39
436046:	6a 01                	push   $0x1
436048:	8d 45 dc             	lea    -0x24(%ebp),%eax
43604b:	50                   	push   %eax
43604c:	ff 37                	push   (%edi)
43604e:	89 5d dc             	mov    %ebx,-0x24(%ebp)
436051:	e8 b8 8d ff ff       	call   0x42ee0e
436056:	83 c4 0c             	add    $0xc,%esp
436059:	85 c0                	test   %eax,%eax
43605b:	75 1c                	jne    0x436079
43605d:	66 83 7d dc 1a       	cmpw   $0x1a,-0x24(%ebp)
436062:	75 15                	jne    0x436079
436064:	ff 75 ec             	push   -0x14(%ebp)
436067:	ff 75 d4             	push   -0x2c(%ebp)
43606a:	ff 37                	push   (%edi)
43606c:	e8 cf 0e 00 00       	call   0x436f40
436071:	83 c4 0c             	add    $0xc,%esp
436074:	83 f8 ff             	cmp    $0xffffffff,%eax
436077:	74 c1                	je     0x43603a
436079:	53                   	push   %ebx
43607a:	53                   	push   %ebx
43607b:	53                   	push   %ebx
43607c:	ff 37                	push   (%edi)
43607e:	e8 ac 97 ff ff       	call   0x42f82f
436083:	23 c2                	and    %edx,%eax
436085:	83 c4 10             	add    $0x10,%esp
436088:	83 f8 ff             	cmp    $0xffffffff,%eax
43608b:	74 ad                	je     0x43603a
43608d:	8a 55 ff             	mov    -0x1(%ebp),%dl
436090:	8b 4d 14             	mov    0x14(%ebp),%ecx
436093:	84 d2                	test   %dl,%dl
436095:	0f 89 1c 02 00 00    	jns    0x4362b7
43609b:	f7 c1 00 40 07 00    	test   $0x74000,%ecx
4360a1:	75 17                	jne    0x4360ba
4360a3:	8b 45 e0             	mov    -0x20(%ebp),%eax
4360a6:	25 00 40 07 00       	and    $0x74000,%eax
4360ab:	75 08                	jne    0x4360b5
4360ad:	81 c9 00 40 00 00    	or     $0x4000,%ecx
4360b3:	eb 02                	jmp    0x4360b7
4360b5:	0b c8                	or     %eax,%ecx
4360b7:	89 4d 14             	mov    %ecx,0x14(%ebp)
4360ba:	8b c1                	mov    %ecx,%eax
4360bc:	25 00 40 07 00       	and    $0x74000,%eax
4360c1:	3d 00 40 00 00       	cmp    $0x4000,%eax
4360c6:	74 44                	je     0x43610c
4360c8:	3d 00 00 01 00       	cmp    $0x10000,%eax
4360cd:	74 29                	je     0x4360f8
4360cf:	3d 00 40 01 00       	cmp    $0x14000,%eax
4360d4:	74 22                	je     0x4360f8
4360d6:	3d 00 00 02 00       	cmp    $0x20000,%eax
4360db:	74 29                	je     0x436106
4360dd:	3d 00 40 02 00       	cmp    $0x24000,%eax
4360e2:	74 22                	je     0x436106
4360e4:	3d 00 00 04 00       	cmp    $0x40000,%eax
4360e9:	74 07                	je     0x4360f2
4360eb:	3d 00 40 04 00       	cmp    $0x44000,%eax
4360f0:	75 1d                	jne    0x43610f
4360f2:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
4360f6:	eb 17                	jmp    0x43610f
4360f8:	8b c1                	mov    %ecx,%eax
4360fa:	25 01 03 00 00       	and    $0x301,%eax
4360ff:	3d 01 03 00 00       	cmp    $0x301,%eax
436104:	75 09                	jne    0x43610f
436106:	c6 45 fe 02          	movb   $0x2,-0x2(%ebp)
43610a:	eb 03                	jmp    0x43610f
43610c:	88 5d fe             	mov    %bl,-0x2(%ebp)
43610f:	f7 c1 00 00 07 00    	test   $0x70000,%ecx
436115:	0f 84 9c 01 00 00    	je     0x4362b7
43611b:	89 5d ec             	mov    %ebx,-0x14(%ebp)
43611e:	f6 c2 40             	test   $0x40,%dl
436121:	0f 85 90 01 00 00    	jne    0x4362b7
436127:	8b 45 f8             	mov    -0x8(%ebp),%eax
43612a:	b9 00 00 00 c0       	mov    $0xc0000000,%ecx
43612f:	23 c1                	and    %ecx,%eax
436131:	3d 00 00 00 40       	cmp    $0x40000000,%eax
436136:	0f 84 ed 00 00 00    	je     0x436229
43613c:	3d 00 00 00 80       	cmp    $0x80000000,%eax
436141:	74 5b                	je     0x43619e
436143:	3b c1                	cmp    %ecx,%eax
436145:	0f 85 6c 01 00 00    	jne    0x4362b7
43614b:	85 f6                	test   %esi,%esi
43614d:	0f 84 64 01 00 00    	je     0x4362b7
436153:	6a 02                	push   $0x2
436155:	59                   	pop    %ecx
436156:	3b f1                	cmp    %ecx,%esi
436158:	0f 86 10 01 00 00    	jbe    0x43626e
43615e:	83 fe 04             	cmp    $0x4,%esi
436161:	76 0e                	jbe    0x436171
436163:	83 fe 05             	cmp    $0x5,%esi
436166:	0f 84 02 01 00 00    	je     0x43626e
43616c:	e9 46 01 00 00       	jmp    0x4362b7
436171:	51                   	push   %ecx
436172:	53                   	push   %ebx
436173:	53                   	push   %ebx
436174:	ff 37                	push   (%edi)
436176:	e8 b4 96 ff ff       	call   0x42f82f
43617b:	83 c4 10             	add    $0x10,%esp
43617e:	0b c2                	or     %edx,%eax
436180:	0f 84 e5 00 00 00    	je     0x43626b
436186:	53                   	push   %ebx
436187:	53                   	push   %ebx
436188:	53                   	push   %ebx
436189:	ff 37                	push   (%edi)
43618b:	e8 9f 96 ff ff       	call   0x42f82f
436190:	23 c2                	and    %edx,%eax
436192:	83 c4 10             	add    $0x10,%esp
436195:	83 f8 ff             	cmp    $0xffffffff,%eax
436198:	0f 84 9c fe ff ff    	je     0x43603a
43619e:	6a 03                	push   $0x3
4361a0:	8d 45 ec             	lea    -0x14(%ebp),%eax
4361a3:	50                   	push   %eax
4361a4:	ff 37                	push   (%edi)
4361a6:	e8 63 8c ff ff       	call   0x42ee0e
4361ab:	83 c4 0c             	add    $0xc,%esp
4361ae:	83 f8 ff             	cmp    $0xffffffff,%eax
4361b1:	0f 84 83 fe ff ff    	je     0x43603a
4361b7:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4361ba:	6a 02                	push   $0x2
4361bc:	5a                   	pop    %edx
4361bd:	3b c2                	cmp    %edx,%eax
4361bf:	74 1a                	je     0x4361db
4361c1:	83 f8 03             	cmp    $0x3,%eax
4361c4:	0f 85 88 00 00 00    	jne    0x436252
4361ca:	81 f9 ef bb bf 00    	cmp    $0xbfbbef,%ecx
4361d0:	75 09                	jne    0x4361db
4361d2:	c6 45 fe 01          	movb   $0x1,-0x2(%ebp)
4361d6:	e9 dc 00 00 00       	jmp    0x4362b7
4361db:	81 e1 ff ff 00 00    	and    $0xffff,%ecx
4361e1:	81 f9 fe ff 00 00    	cmp    $0xfffe,%ecx
4361e7:	75 17                	jne    0x436200
4361e9:	ff 37                	push   (%edi)
4361eb:	e8 ac 88 ff ff       	call   0x42ea9c
4361f0:	59                   	pop    %ecx
4361f1:	e8 18 1a ff ff       	call   0x427c0e
4361f6:	6a 16                	push   $0x16
4361f8:	5b                   	pop    %ebx
4361f9:	89 18                	mov    %ebx,(%eax)
4361fb:	e9 b7 01 00 00       	jmp    0x4363b7
436200:	81 f9 ff fe 00 00    	cmp    $0xfeff,%ecx
436206:	75 4a                	jne    0x436252
436208:	53                   	push   %ebx
436209:	53                   	push   %ebx
43620a:	52                   	push   %edx
43620b:	ff 37                	push   (%edi)
43620d:	e8 1d 96 ff ff       	call   0x42f82f
436212:	23 c2                	and    %edx,%eax
436214:	83 c4 10             	add    $0x10,%esp
436217:	83 f8 ff             	cmp    $0xffffffff,%eax
43621a:	0f 84 1a fe ff ff    	je     0x43603a
436220:	c6 45 fe 02          	movb   $0x2,-0x2(%ebp)
436224:	e9 8e 00 00 00       	jmp    0x4362b7
436229:	85 f6                	test   %esi,%esi
43622b:	0f 84 86 00 00 00    	je     0x4362b7
436231:	6a 02                	push   $0x2
436233:	59                   	pop    %ecx
436234:	3b f1                	cmp    %ecx,%esi
436236:	76 36                	jbe    0x43626e
436238:	83 fe 04             	cmp    $0x4,%esi
43623b:	0f 87 22 ff ff ff    	ja     0x436163
436241:	51                   	push   %ecx
436242:	53                   	push   %ebx
436243:	53                   	push   %ebx
436244:	ff 37                	push   (%edi)
436246:	e8 e4 95 ff ff       	call   0x42f82f
43624b:	83 c4 10             	add    $0x10,%esp
43624e:	0b c2                	or     %edx,%eax
436250:	74 19                	je     0x43626b
436252:	53                   	push   %ebx
436253:	53                   	push   %ebx
436254:	53                   	push   %ebx
436255:	ff 37                	push   (%edi)
436257:	e8 d3 95 ff ff       	call   0x42f82f
43625c:	23 c2                	and    %edx,%eax
43625e:	83 c4 10             	add    $0x10,%esp
436261:	83 f8 ff             	cmp    $0xffffffff,%eax
436264:	75 51                	jne    0x4362b7
436266:	e9 cf fd ff ff       	jmp    0x43603a
43626b:	6a 02                	push   $0x2
43626d:	59                   	pop    %ecx
43626e:	0f be 45 fe          	movsbl -0x2(%ebp),%eax
436272:	8b f3                	mov    %ebx,%esi
436274:	48                   	dec    %eax
436275:	74 0c                	je     0x436283
436277:	48                   	dec    %eax
436278:	75 3d                	jne    0x4362b7
43627a:	c7 45 ec ff fe 00 00 	movl   $0xfeff,-0x14(%ebp)
436281:	eb 0d                	jmp    0x436290
436283:	6a 03                	push   $0x3
436285:	59                   	pop    %ecx
436286:	c7 45 ec ef bb bf 00 	movl   $0xbfbbef,-0x14(%ebp)
43628d:	89 4d d8             	mov    %ecx,-0x28(%ebp)
436290:	8b c1                	mov    %ecx,%eax
436292:	2b c6                	sub    %esi,%eax
436294:	50                   	push   %eax
436295:	8d 45 ec             	lea    -0x14(%ebp),%eax
436298:	03 c6                	add    %esi,%eax
43629a:	50                   	push   %eax
43629b:	ff 37                	push   (%edi)
43629d:	e8 bf 4c ff ff       	call   0x42af61
4362a2:	83 c4 0c             	add    $0xc,%esp
4362a5:	83 f8 ff             	cmp    $0xffffffff,%eax
4362a8:	0f 84 8c fd ff ff    	je     0x43603a
4362ae:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4362b1:	03 f0                	add    %eax,%esi
4362b3:	3b ce                	cmp    %esi,%ecx
4362b5:	7f d9                	jg     0x436290
4362b7:	8b 17                	mov    (%edi),%edx
4362b9:	8b c2                	mov    %edx,%eax
4362bb:	c1 f8 05             	sar    $0x5,%eax
4362be:	83 e2 1f             	and    $0x1f,%edx
4362c1:	8b 0c 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%ecx
4362c8:	c1 e2 06             	shl    $0x6,%edx
4362cb:	8a 44 11 24          	mov    0x24(%ecx,%edx,1),%al
4362cf:	32 45 fe             	xor    -0x2(%ebp),%al
4362d2:	24 7f                	and    $0x7f,%al
4362d4:	30 44 11 24          	xor    %al,0x24(%ecx,%edx,1)
4362d8:	8b 37                	mov    (%edi),%esi
4362da:	8b 4d 14             	mov    0x14(%ebp),%ecx
4362dd:	8b c6                	mov    %esi,%eax
4362df:	c1 f8 05             	sar    $0x5,%eax
4362e2:	83 e6 1f             	and    $0x1f,%esi
4362e5:	8b 14 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%edx
4362ec:	c1 e6 06             	shl    $0x6,%esi
4362ef:	c1 e9 10             	shr    $0x10,%ecx
4362f2:	8a 44 32 24          	mov    0x24(%edx,%esi,1),%al
4362f6:	c0 e1 07             	shl    $0x7,%cl
4362f9:	24 7f                	and    $0x7f,%al
4362fb:	0a c8                	or     %al,%cl
4362fd:	88 4c 32 24          	mov    %cl,0x24(%edx,%esi,1)
436301:	8b 4d 14             	mov    0x14(%ebp),%ecx
436304:	38 5d fd             	cmp    %bl,-0x3(%ebp)
436307:	75 21                	jne    0x43632a
436309:	f6 c1 08             	test   $0x8,%cl
43630c:	74 1c                	je     0x43632a
43630e:	8b 0f                	mov    (%edi),%ecx
436310:	8b c1                	mov    %ecx,%eax
436312:	c1 f8 05             	sar    $0x5,%eax
436315:	83 e1 1f             	and    $0x1f,%ecx
436318:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
43631f:	c1 e1 06             	shl    $0x6,%ecx
436322:	80 4c 08 04 20       	orb    $0x20,0x4(%eax,%ecx,1)
436327:	8b 4d 14             	mov    0x14(%ebp),%ecx
43632a:	8b 75 f8             	mov    -0x8(%ebp),%esi
43632d:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
436332:	8b c6                	mov    %esi,%eax
436334:	23 c2                	and    %edx,%eax
436336:	3b c2                	cmp    %edx,%eax
436338:	75 7d                	jne    0x4363b7
43633a:	f6 c1 01             	test   $0x1,%cl
43633d:	74 78                	je     0x4363b7
43633f:	ff 75 e4             	push   -0x1c(%ebp)
436342:	ff 15 0c d3 48 00    	call   *0x48d30c