436d5c:	89 bd f4 fb ff ff    	mov    %edi,-0x40c(%ebp)
436d62:	85 ff                	test   %edi,%edi
436d64:	0f 89 11 09 00 00    	jns    0x43767b
436d6a:	83 8d f4 fb ff ff ff 	orl    $0xffffffff,-0x40c(%ebp)
436d71:	e9 05 09 00 00       	jmp    0x43767b
436d76:	8b 85 f4 fb ff ff    	mov    -0x40c(%ebp),%eax
436d7c:	6b c0 0a             	imul   $0xa,%eax,%eax
436d7f:	0f b7 c9             	movzwl %cx,%ecx
436d82:	8d 44 08 d0          	lea    -0x30(%eax,%ecx,1),%eax
436d86:	89 85 f4 fb ff ff    	mov    %eax,-0x40c(%ebp)
436d8c:	e9 ea 08 00 00       	jmp    0x43767b
436d91:	0f b7 c1             	movzwl %cx,%eax
436d94:	83 f8 49             	cmp    $0x49,%eax
436d97:	74 57                	je     0x436df0
436d99:	83 f8 68             	cmp    $0x68,%eax
436d9c:	74 46                	je     0x436de4
436d9e:	83 f8 6c             	cmp    $0x6c,%eax
436da1:	74 18                	je     0x436dbb
436da3:	83 f8 77             	cmp    $0x77,%eax
436da6:	0f 85 cf 08 00 00    	jne    0x43767b
436dac:	81 8d f8 fb ff ff 00 	orl    $0x800,-0x408(%ebp)
436db3:	08 00 00
436db6:	e9 c0 08 00 00       	jmp    0x43767b
436dbb:	66 83 3e 6c          	cmpw   $0x6c,(%esi)
436dbf:	75 17                	jne    0x436dd8
436dc1:	03 f3                	add    %ebx,%esi
436dc3:	81 8d f8 fb ff ff 00 	orl    $0x1000,-0x408(%ebp)
436dca:	10 00 00
436dcd:	89 b5 c0 fb ff ff    	mov    %esi,-0x440(%ebp)
436dd3:	e9 a3 08 00 00       	jmp    0x43767b
436dd8:	83 8d f8 fb ff ff 10 	orl    $0x10,-0x408(%ebp)
436ddf:	e9 97 08 00 00       	jmp    0x43767b
436de4:	83 8d f8 fb ff ff 20 	orl    $0x20,-0x408(%ebp)
436deb:	e9 8b 08 00 00       	jmp    0x43767b
436df0:	0f b7 06             	movzwl (%esi),%eax
436df3:	83 f8 36             	cmp    $0x36,%eax
436df6:	75 1f                	jne    0x436e17
436df8:	66 83 7e 02 34       	cmpw   $0x34,0x2(%esi)
436dfd:	75 18                	jne    0x436e17
436dff:	83 c6 04             	add    $0x4,%esi
436e02:	81 8d f8 fb ff ff 00 	orl    $0x8000,-0x408(%ebp)
436e09:	80 00 00
436e0c:	89 b5 c0 fb ff ff    	mov    %esi,-0x440(%ebp)
436e12:	e9 64 08 00 00       	jmp    0x43767b
436e17:	83 f8 33             	cmp    $0x33,%eax
436e1a:	75 1f                	jne    0x436e3b
436e1c:	66 83 7e 02 32       	cmpw   $0x32,0x2(%esi)
436e21:	75 18                	jne    0x436e3b
436e23:	83 c6 04             	add    $0x4,%esi
436e26:	81 a5 f8 fb ff ff ff 	andl   $0xffff7fff,-0x408(%ebp)
436e2d:	7f ff ff
436e30:	89 b5 c0 fb ff ff    	mov    %esi,-0x440(%ebp)
436e36:	e9 40 08 00 00       	jmp    0x43767b
436e3b:	83 f8 64             	cmp    $0x64,%eax
436e3e:	0f 84 37 08 00 00    	je     0x43767b
436e44:	83 f8 69             	cmp    $0x69,%eax
436e47:	0f 84 2e 08 00 00    	je     0x43767b
436e4d:	83 f8 6f             	cmp    $0x6f,%eax
436e50:	0f 84 25 08 00 00    	je     0x43767b
436e56:	83 f8 75             	cmp    $0x75,%eax
436e59:	0f 84 1c 08 00 00    	je     0x43767b
436e5f:	83 f8 78             	cmp    $0x78,%eax
436e62:	0f 84 13 08 00 00    	je     0x43767b
436e68:	83 f8 58             	cmp    $0x58,%eax
436e6b:	0f 84 0a 08 00 00    	je     0x43767b
436e71:	83 a5 a0 fb ff ff 00 	andl   $0x0,-0x460(%ebp)
436e78:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
436e7e:	51                   	push   %ecx
436e7f:	8d b5 e8 fb ff ff    	lea    -0x418(%ebp),%esi
436e85:	c7 85 d4 fb ff ff 01 	movl   $0x1,-0x42c(%ebp)
436e8c:	00 00 00
436e8f:	e8 ee fb ff ff       	call   0x436a82
436e94:	e9 e1 07 00 00       	jmp    0x43767a
436e99:	0f b7 c1             	movzwl %cx,%eax
436e9c:	83 f8 64             	cmp    $0x64,%eax
436e9f:	0f 8f 2f 02 00 00    	jg     0x4370d4
436ea5:	0f 84 c0 02 00 00    	je     0x43716b
436eab:	83 f8 53             	cmp    $0x53,%eax
436eae:	0f 8f 1b 01 00 00    	jg     0x436fcf
436eb4:	74 7e                	je     0x436f34
436eb6:	83 e8 41             	sub    $0x41,%eax
436eb9:	74 10                	je     0x436ecb
436ebb:	2b c3                	sub    %ebx,%eax
436ebd:	74 59                	je     0x436f18
436ebf:	2b c3                	sub    %ebx,%eax
436ec1:	74 08                	je     0x436ecb
436ec3:	2b c3                	sub    %ebx,%eax
436ec5:	0f 85 df 05 00 00    	jne    0x4374aa
436ecb:	83 c1 20             	add    $0x20,%ecx
436ece:	c7 85 98 fb ff ff 01 	movl   $0x1,-0x468(%ebp)
436ed5:	00 00 00
436ed8:	89 8d e4 fb ff ff    	mov    %ecx,-0x41c(%ebp)
436ede:	83 8d f8 fb ff ff 40 	orl    $0x40,-0x408(%ebp)
436ee5:	83 bd f4 fb ff ff 00 	cmpl   $0x0,-0x40c(%ebp)
436eec:	8d 9d fc fb ff ff    	lea    -0x404(%ebp),%ebx
436ef2:	b8 00 02 00 00       	mov    $0x200,%eax
436ef7:	89 9d f0 fb ff ff    	mov    %ebx,-0x410(%ebp)
436efd:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
436f03:	0f 8d 92 02 00 00    	jge    0x43719b
436f09:	c7 85 f4 fb ff ff 06 	movl   $0x6,-0x40c(%ebp)
436f10:	00 00 00
436f13:	e9 ec 02 00 00       	jmp    0x437204
436f18:	f7 85 f8 fb ff ff 30 	testl  $0x830,-0x408(%ebp)
436f1f:	08 00 00
436f22:	0f 85 c8 00 00 00    	jne    0x436ff0
436f28:	83 8d f8 fb ff ff 20 	orl    $0x20,-0x408(%ebp)
436f2f:	e9 bc 00 00 00       	jmp    0x436ff0
436f34:	f7 85 f8 fb ff ff 30 	testl  $0x830,-0x408(%ebp)
436f3b:	08 00 00
436f3e:	75 07                	jne    0x436f47
436f40:	83 8d f8 fb ff ff 20 	orl    $0x20,-0x408(%ebp)
436f47:	8b 9d f4 fb ff ff    	mov    -0x40c(%ebp),%ebx
436f4d:	83 fb ff             	cmp    $0xffffffff,%ebx
436f50:	75 05                	jne    0x436f57
436f52:	bb ff ff ff 7f       	mov    $0x7fffffff,%ebx
436f57:	83 c7 04             	add    $0x4,%edi
436f5a:	f6 85 f8 fb ff ff 20 	testb  $0x20,-0x408(%ebp)
436f61:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
436f67:	8b 7f fc             	mov    -0x4(%edi),%edi
436f6a:	89 bd f0 fb ff ff    	mov    %edi,-0x410(%ebp)
436f70:	0f 84 f7 04 00 00    	je     0x43746d
436f76:	85 ff                	test   %edi,%edi
436f78:	75 0b                	jne    0x436f85
436f7a:	a1 60 f6 46 00       	mov    0x46f660,%eax
436f7f:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
436f85:	83 a5 ec fb ff ff 00 	andl   $0x0,-0x414(%ebp)
436f8c:	8b b5 f0 fb ff ff    	mov    -0x410(%ebp),%esi
436f92:	85 db                	test   %ebx,%ebx
436f94:	0f 8e 10 05 00 00    	jle    0x4374aa
436f9a:	8a 06                	mov    (%esi),%al
436f9c:	84 c0                	test   %al,%al
436f9e:	0f 84 06 05 00 00    	je     0x4374aa
436fa4:	8d 8d a8 fb ff ff    	lea    -0x458(%ebp),%ecx
436faa:	0f b6 c0             	movzbl %al,%eax
436fad:	51                   	push   %ecx
436fae:	50                   	push   %eax
436faf:	e8 f5 7f 00 00       	call   0x43efa9
436fb4:	59                   	pop    %ecx
436fb5:	59                   	pop    %ecx
436fb6:	85 c0                	test   %eax,%eax
436fb8:	74 01                	je     0x436fbb
436fba:	46                   	inc    %esi
436fbb:	46                   	inc    %esi
436fbc:	ff 85 ec fb ff ff    	incl   -0x414(%ebp)
436fc2:	39 9d ec fb ff ff    	cmp    %ebx,-0x414(%ebp)
436fc8:	7c d0                	jl     0x436f9a
436fca:	e9 db 04 00 00       	jmp    0x4374aa
436fcf:	83 e8 58             	sub    $0x58,%eax
436fd2:	0f 84 f5 02 00 00    	je     0x4372cd
436fd8:	2b c3                	sub    %ebx,%eax
436fda:	0f 84 94 00 00 00    	je     0x437074
436fe0:	2b c2                	sub    %edx,%eax
436fe2:	0f 84 f6 fe ff ff    	je     0x436ede
436fe8:	2b c3                	sub    %ebx,%eax
436fea:	0f 85 ba 04 00 00    	jne    0x4374aa
436ff0:	0f b7 07             	movzwl (%edi),%eax
436ff3:	83 c7 04             	add    $0x4,%edi
436ff6:	33 f6                	xor    %esi,%esi
436ff8:	46                   	inc    %esi
436ff9:	f6 85 f8 fb ff ff 20 	testb  $0x20,-0x408(%ebp)
437000:	89 b5 d4 fb ff ff    	mov    %esi,-0x42c(%ebp)
437006:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
43700c:	89 85 a4 fb ff ff    	mov    %eax,-0x45c(%ebp)
437012:	74 42                	je     0x437056
437014:	88 85 c8 fb ff ff    	mov    %al,-0x438(%ebp)
43701a:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
437020:	50                   	push   %eax
437021:	8b 85 a8 fb ff ff    	mov    -0x458(%ebp),%eax
437027:	c6 85 c9 fb ff ff 00 	movb   $0x0,-0x437(%ebp)
43702e:	ff b0 ac 00 00 00    	push   0xac(%eax)
437034:	8d 85 c8 fb ff ff    	lea    -0x438(%ebp),%eax
43703a:	50                   	push   %eax
43703b:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
437041:	50                   	push   %eax
437042:	e8 7d a9 00 00       	call   0x4419c4
437047:	83 c4 10             	add    $0x10,%esp
43704a:	85 c0                	test   %eax,%eax
43704c:	79 0f                	jns    0x43705d
43704e:	89 b5 b8 fb ff ff    	mov    %esi,-0x448(%ebp)
437054:	eb 07                	jmp    0x43705d
437056:	66 89 85 fc fb ff ff 	mov    %ax,-0x404(%ebp)
43705d:	8d 85 fc fb ff ff    	lea    -0x404(%ebp),%eax
437063:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
437069:	89 b5 ec fb ff ff    	mov    %esi,-0x414(%ebp)
43706f:	e9 36 04 00 00       	jmp    0x4374aa
437074:	8b 07                	mov    (%edi),%eax
437076:	83 c7 04             	add    $0x4,%edi
437079:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
43707f:	85 c0                	test   %eax,%eax
437081:	74 3a                	je     0x4370bd
437083:	8b 48 04             	mov    0x4(%eax),%ecx
437086:	85 c9                	test   %ecx,%ecx
437088:	74 33                	je     0x4370bd
43708a:	f7 85 f8 fb ff ff 00 	testl  $0x800,-0x408(%ebp)
437091:	08 00 00
437094:	0f bf 00             	movswl (%eax),%eax
437097:	89 8d f0 fb ff ff    	mov    %ecx,-0x410(%ebp)
43709d:	74 12                	je     0x4370b1
43709f:	99                   	cltd
4370a0:	2b c2                	sub    %edx,%eax
4370a2:	c7 85 d4 fb ff ff 01 	movl   $0x1,-0x42c(%ebp)
4370a9:	00 00 00
4370ac:	e9 f1 03 00 00       	jmp    0x4374a2
4370b1:	83 a5 d4 fb ff ff 00 	andl   $0x0,-0x42c(%ebp)
4370b8:	e9 e7 03 00 00       	jmp    0x4374a4
4370bd:	a1 60 f6 46 00       	mov    0x46f660,%eax
4370c2:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
4370c8:	50                   	push   %eax
4370c9:	e8 a2 41 00 00       	call   0x43b270
4370ce:	59                   	pop    %ecx
4370cf:	e9 d0 03 00 00       	jmp    0x4374a4
4370d4:	83 f8 70             	cmp    $0x70,%eax
4370d7:	0f 8f f8 01 00 00    	jg     0x4372d5
4370dd:	0f 84 e0 01 00 00    	je     0x4372c3
4370e3:	83 f8 65             	cmp    $0x65,%eax
4370e6:	0f 8c be 03 00 00    	jl     0x4374aa
4370ec:	83 f8 67             	cmp    $0x67,%eax
4370ef:	0f 8e e9 fd ff ff    	jle    0x436ede
4370f5:	83 f8 69             	cmp    $0x69,%eax
4370f8:	74 71                	je     0x43716b
4370fa:	83 f8 6e             	cmp    $0x6e,%eax
4370fd:	74 28                	je     0x437127
4370ff:	83 f8 6f             	cmp    $0x6f,%eax
437102:	0f 85 a2 03 00 00    	jne    0x4374aa
437108:	f6 85 f8 fb ff ff 80 	testb  $0x80,-0x408(%ebp)
43710f:	c7 85 e4 fb ff ff 08 	movl   $0x8,-0x41c(%ebp)
437116:	00 00 00
437119:	74 61                	je     0x43717c
43711b:	81 8d f8 fb ff ff 00 	orl    $0x200,-0x408(%ebp)
437122:	02 00 00
437125:	eb 55                	jmp    0x43717c
437127:	8b 37                	mov    (%edi),%esi
437129:	83 c7 04             	add    $0x4,%edi
43712c:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
437132:	e8 12 95 ff ff       	call   0x430649
437137:	85 c0                	test   %eax,%eax
437139:	0f 84 63 05 00 00    	je     0x4376a2
43713f:	f6 85 f8 fb ff ff 20 	testb  $0x20,-0x408(%ebp)
437146:	74 0c                	je     0x437154
437148:	66 8b 85 e8 fb ff ff 	mov    -0x418(%ebp),%ax
43714f:	66 89 06             	mov    %ax,(%esi)
437152:	eb 08                	jmp    0x43715c
437154:	8b 85 e8 fb ff ff    	mov    -0x418(%ebp),%eax
43715a:	89 06                	mov    %eax,(%esi)
43715c:	c7 85 b8 fb ff ff 01 	movl   $0x1,-0x448(%ebp)
437163:	00 00 00
437166:	e9 f4 04 00 00       	jmp    0x43765f
43716b:	83 8d f8 fb ff ff 40 	orl    $0x40,-0x408(%ebp)
437172:	c7 85 e4 fb ff ff 0a 	movl   $0xa,-0x41c(%ebp)
437179:	00 00 00
43717c:	8b 8d f8 fb ff ff    	mov    -0x408(%ebp),%ecx
437182:	f7 c1 00 80 00 00    	test   $0x8000,%ecx
437188:	0f 84 a7 01 00 00    	je     0x437335
43718e:	8b 07                	mov    (%edi),%eax
437190:	8b 57 04             	mov    0x4(%edi),%edx
437193:	83 c7 08             	add    $0x8,%edi
437196:	e9 d3 01 00 00       	jmp    0x43736e
43719b:	75 16                	jne    0x4371b3
43719d:	66 83 bd e4 fb ff ff 	cmpw   $0x67,-0x41c(%ebp)
4371a4:	67
4371a5:	75 5d                	jne    0x437204
4371a7:	c7 85 f4 fb ff ff 01 	movl   $0x1,-0x40c(%ebp)
4371ae:	00 00 00
4371b1:	eb 51                	jmp    0x437204
4371b3:	39 85 f4 fb ff ff    	cmp    %eax,-0x40c(%ebp)
4371b9:	7e 06                	jle    0x4371c1
4371bb:	89 85 f4 fb ff ff    	mov    %eax,-0x40c(%ebp)
4371c1:	81 bd f4 fb ff ff a3 	cmpl   $0xa3,-0x40c(%ebp)
4371c8:	00 00 00
4371cb:	7e 37                	jle    0x437204
4371cd:	8b b5 f4 fb ff ff    	mov    -0x40c(%ebp),%esi
4371d3:	81 c6 5d 01 00 00    	add    $0x15d,%esi
4371d9:	56                   	push   %esi
4371da:	e8 5c f2 ff ff       	call   0x43643b
4371df:	59                   	pop    %ecx
4371e0:	89 85 c4 fb ff ff    	mov    %eax,-0x43c(%ebp)
4371e6:	85 c0                	test   %eax,%eax
4371e8:	74 10                	je     0x4371fa
4371ea:	89 85 f0 fb ff ff    	mov    %eax,-0x410(%ebp)
4371f0:	89 b5 ec fb ff ff    	mov    %esi,-0x414(%ebp)
4371f6:	8b d8                	mov    %eax,%ebx
4371f8:	eb 0a                	jmp    0x437204
4371fa:	c7 85 f4 fb ff ff a3 	movl   $0xa3,-0x40c(%ebp)
437201:	00 00 00
437204:	8b 07                	mov    (%edi),%eax
437206:	8b 35 d4 34 47 00    	mov    0x4734d4,%esi
43720c:	83 c7 08             	add    $0x8,%edi
43720f:	89 85 90 fb ff ff    	mov    %eax,-0x470(%ebp)
437215:	8b 47 fc             	mov    -0x4(%edi),%eax
437218:	89 85 94 fb ff ff    	mov    %eax,-0x46c(%ebp)
43721e:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
437224:	50                   	push   %eax
437225:	ff b5 98 fb ff ff    	push   -0x468(%ebp)
43722b:	0f be 85 e4 fb ff ff 	movsbl -0x41c(%ebp),%eax
437232:	ff b5 f4 fb ff ff    	push   -0x40c(%ebp)
437238:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
43723e:	50                   	push   %eax
43723f:	ff b5 ec fb ff ff    	push   -0x414(%ebp)
437245:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
43724b:	53                   	push   %ebx
43724c:	50                   	push   %eax
43724d:	ff 35 50 f6 46 00    	push   0x46f650
437253:	ff d6                	call   *%esi
437255:	ff d0                	call   *%eax
437257:	8b bd f8 fb ff ff    	mov    -0x408(%ebp),%edi
43725d:	83 c4 1c             	add    $0x1c,%esp
437260:	81 e7 80 00 00 00    	and    $0x80,%edi
437266:	74 1d                	je     0x437285
437268:	83 bd f4 fb ff ff 00 	cmpl   $0x0,-0x40c(%ebp)
43726f:	75 14                	jne    0x437285
437271:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
437277:	50                   	push   %eax
437278:	53                   	push   %ebx
437279:	ff 35 5c f6 46 00    	push   0x46f65c
43727f:	ff d6                	call   *%esi
437281:	ff d0                	call   *%eax
437283:	59                   	pop    %ecx
437284:	59                   	pop    %ecx
437285:	66 83 bd e4 fb ff ff 	cmpw   $0x67,-0x41c(%ebp)
43728c:	67
43728d:	75 18                	jne    0x4372a7
43728f:	85 ff                	test   %edi,%edi
437291:	75 14                	jne    0x4372a7
437293:	8d 85 a8 fb ff ff    	lea    -0x458(%ebp),%eax
437299:	50                   	push   %eax
43729a:	53                   	push   %ebx
43729b:	ff 35 58 f6 46 00    	push   0x46f658
4372a1:	ff d6                	call   *%esi
4372a3:	ff d0                	call   *%eax
4372a5:	59                   	pop    %ecx
4372a6:	59                   	pop    %ecx
4372a7:	80 3b 2d             	cmpb   $0x2d,(%ebx)
4372aa:	75 11                	jne    0x4372bd
4372ac:	81 8d f8 fb ff ff 00 	orl    $0x100,-0x408(%ebp)
4372b3:	01 00 00
4372b6:	43                   	inc    %ebx
4372b7:	89 9d f0 fb ff ff    	mov    %ebx,-0x410(%ebp)
4372bd:	53                   	push   %ebx
4372be:	e9 06 fe ff ff       	jmp    0x4370c9
4372c3:	c7 85 f4 fb ff ff 08 	movl   $0x8,-0x40c(%ebp)
4372ca:	00 00 00
4372cd:	89 95 bc fb ff ff    	mov    %edx,-0x444(%ebp)
4372d3:	eb 24                	jmp    0x4372f9
4372d5:	83 e8 73             	sub    $0x73,%eax
4372d8:	0f 84 69 fc ff ff    	je     0x436f47
4372de:	2b c3                	sub    %ebx,%eax
4372e0:	0f 84 8c fe ff ff    	je     0x437172
4372e6:	83 e8 03             	sub    $0x3,%eax
4372e9:	0f 85 bb 01 00 00    	jne    0x4374aa
4372ef:	c7 85 bc fb ff ff 27 	movl   $0x27,-0x444(%ebp)