436ca8:	48                   	dec    %eax
436ca9:	89 86 90 03 00 00    	mov    %eax,0x390(%esi)
436caf:	89 7c 24 14          	mov    %edi,0x14(%esp)
436cb3:	8b f7                	mov    %edi,%esi
436cb5:	eb 09                	jmp    0x436cc0
436cb7:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
436cbe:	8b ff                	mov    %edi,%edi
436cc0:	56                   	push   %esi
436cc1:	8d 8c 24 a4 00 00 00 	lea    0xa4(%esp),%ecx
436cc8:	e8 e3 f0 ff ff       	call   0x435db0
436ccd:	8b 76 1c             	mov    0x1c(%esi),%esi
436cd0:	85 f6                	test   %esi,%esi
436cd2:	75 ec                	jne    0x436cc0
436cd4:	89 74 24 1c          	mov    %esi,0x1c(%esp)
436cd8:	eb 06                	jmp    0x436ce0
436cda:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
436ce0:	8b 5c 24 14          	mov    0x14(%esp),%ebx
436ce4:	85 db                	test   %ebx,%ebx
436ce6:	0f 84 a1 07 00 00    	je     0x43748d
436cec:	8b 43 1c             	mov    0x1c(%ebx),%eax
436cef:	89 44 24 14          	mov    %eax,0x14(%esp)
436cf3:	8a 43 44             	mov    0x44(%ebx),%al
436cf6:	24 01                	and    $0x1,%al
436cf8:	c7 43 1c 00 00 00 00 	movl   $0x0,0x1c(%ebx)
436cff:	88 44 24 27          	mov    %al,0x27(%esp)
436d03:	8b 83 80 00 00 00    	mov    0x80(%ebx),%eax
436d09:	8b 48 20             	mov    0x20(%eax),%ecx
436d0c:	89 4c 24 5c          	mov    %ecx,0x5c(%esp)
436d10:	8b 48 24             	mov    0x24(%eax),%ecx
436d13:	8b 00                	mov    (%eax),%eax
436d15:	89 4c 24 60          	mov    %ecx,0x60(%esp)
436d19:	8b 4b 70             	mov    0x70(%ebx),%ecx
436d1c:	89 4c 24 54          	mov    %ecx,0x54(%esp)
436d20:	8b 4b 74             	mov    0x74(%ebx),%ecx
436d23:	8b 40 10             	mov    0x10(%eax),%eax
436d26:	89 4c 24 58          	mov    %ecx,0x58(%esp)
436d2a:	8b 4b 7c             	mov    0x7c(%ebx),%ecx
436d2d:	89 44 24 4c          	mov    %eax,0x4c(%esp)
436d31:	8b 83 94 00 00 00    	mov    0x94(%ebx),%eax
436d37:	89 4c 24 50          	mov    %ecx,0x50(%esp)
436d3b:	89 44 24 48          	mov    %eax,0x48(%esp)
436d3f:	e8 4c 68 ff ff       	call   0x42d590
436d44:	f6 43 44 08          	testb  $0x8,0x44(%ebx)
436d48:	89 44 24 0c          	mov    %eax,0xc(%esp)
436d4c:	89 54 24 10          	mov    %edx,0x10(%esp)
436d50:	74 0d                	je     0x436d5f
436d52:	8b 4b 68             	mov    0x68(%ebx),%ecx
436d55:	81 4b 6c 00 00 01 00 	orl    $0x10000,0x6c(%ebx)
436d5c:	89 4b 68             	mov    %ecx,0x68(%ebx)
436d5f:	83 7c 24 34 00       	cmpl   $0x0,0x34(%esp)
436d64:	74 0d                	je     0x436d73
436d66:	8b 43 68             	mov    0x68(%ebx),%eax
436d69:	81 4b 6c 00 00 08 00 	orl    $0x80000,0x6c(%ebx)
436d70:	89 43 68             	mov    %eax,0x68(%ebx)
436d73:	8b 83 80 00 00 00    	mov    0x80(%ebx),%eax
436d79:	53                   	push   %ebx
436d7a:	8b 08                	mov    (%eax),%ecx
436d7c:	8b 89 b0 03 00 00    	mov    0x3b0(%ecx),%ecx
436d82:	e8 59 d0 ff ff       	call   0x433de0
436d87:	81 63 44 ff fd ff ff 	andl   $0xfffffdff,0x44(%ebx)
436d8e:	8d 4b 28             	lea    0x28(%ebx),%ecx
436d91:	89 44 24 18          	mov    %eax,0x18(%esp)
436d95:	e8 f6 d9 fe ff       	call   0x424790
436d9a:	85 c0                	test   %eax,%eax
436d9c:	75 0a                	jne    0x436da8
436d9e:	6a ff                	push   $0xffffffff
436da0:	8d 4b 28             	lea    0x28(%ebx),%ecx
436da3:	e8 38 dd fe ff       	call   0x424ae0
436da8:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
436dac:	8d 73 24             	lea    0x24(%ebx),%esi
436daf:	76 2d                	jbe    0x436dde
436db1:	83 c8 ff             	or     $0xffffffff,%eax
436db4:	b9 d8 14 45 00       	mov    $0x4514d8,%ecx
436db9:	f0 0f c1 01          	lock xadd %eax,(%ecx)
436dbd:	83 e8 01             	sub    $0x1,%eax
436dc0:	75 0a                	jne    0x436dcc
436dc2:	b9 d0 14 45 00       	mov    $0x4514d0,%ecx
436dc7:	e8 d4 19 00 00       	call   0x4387a0
436dcc:	83 3e 00             	cmpl   $0x0,(%esi)
436dcf:	76 0d                	jbe    0x436dde
436dd1:	8b 06                	mov    (%esi),%eax
436dd3:	33 c9                	xor    %ecx,%ecx
436dd5:	f0 0f b1 0e          	lock cmpxchg %ecx,(%esi)
436dd9:	83 3e 00             	cmpl   $0x0,(%esi)
436ddc:	77 f3                	ja     0x436dd1
436dde:	66 c7 43 2c 0f 00    	movw   $0xf,0x2c(%ebx)
436de4:	8d 4b 28             	lea    0x28(%ebx),%ecx
436de7:	c7 43 40 00 00 00 00 	movl   $0x0,0x40(%ebx)
436dee:	6a 01                	push   $0x1
436df0:	c7 43 30 00 00 00 00 	movl   $0x0,0x30(%ebx)
436df7:	e8 44 e0 fd ff       	call   0x414e40
436dfc:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
436e01:	74 0d                	je     0x436e10
436e03:	8b 43 68             	mov    0x68(%ebx),%eax
436e06:	81 4b 6c 00 00 04 00 	orl    $0x40000,0x6c(%ebx)
436e0d:	89 43 68             	mov    %eax,0x68(%ebx)
436e10:	e8 db 6e 00 00       	call   0x43dcf0
436e15:	83 c0 10             	add    $0x10,%eax
436e18:	74 73                	je     0x436e8d
436e1a:	e8 d1 6e 00 00       	call   0x43dcf0
436e1f:	f6 40 10 02          	testb  $0x2,0x10(%eax)
436e23:	74 68                	je     0x436e8d
436e25:	8b 83 80 00 00 00    	mov    0x80(%ebx),%eax
436e2b:	8b 10                	mov    (%eax),%edx
436e2d:	83 ba 2c 03 00 00 00 	cmpl   $0x0,0x32c(%edx)
436e34:	8b 82 b0 03 00 00    	mov    0x3b0(%edx),%eax
436e3a:	8b 70 40             	mov    0x40(%eax),%esi
436e3d:	75 1a                	jne    0x436e59
436e3f:	83 ba 34 03 00 00 0c 	cmpl   $0xc,0x334(%edx)
436e46:	72 11                	jb     0x436e59
436e48:	80 ba 38 03 00 00 00 	cmpb   $0x0,0x338(%edx)
436e4f:	75 08                	jne    0x436e59
436e51:	8b 0d 70 12 45 00    	mov    0x451270,%ecx
436e57:	eb 09                	jmp    0x436e62
436e59:	33 c9                	xor    %ecx,%ecx
436e5b:	83 fe 0a             	cmp    $0xa,%esi
436e5e:	0f 9d c1             	setge  %cl
436e61:	41                   	inc    %ecx
436e62:	39 8a 90 03 00 00    	cmp    %ecx,0x390(%edx)
436e68:	7e 04                	jle    0x436e6e
436e6a:	33 c9                	xor    %ecx,%ecx
436e6c:	eb 08                	jmp    0x436e76
436e6e:	8b 82 90 03 00 00    	mov    0x390(%edx),%eax
436e74:	2b c8                	sub    %eax,%ecx
436e76:	3b f1                	cmp    %ecx,%esi
436e78:	7c 02                	jl     0x436e7c
436e7a:	8b f1                	mov    %ecx,%esi
436e7c:	85 f6                	test   %esi,%esi
436e7e:	7e 0d                	jle    0x436e8d
436e80:	8b 43 68             	mov    0x68(%ebx),%eax
436e83:	81 4b 6c 00 00 02 00 	orl    $0x20000,0x6c(%ebx)
436e8a:	89 43 68             	mov    %eax,0x68(%ebx)
436e8d:	8b 44 24 30          	mov    0x30(%esp),%eax
436e91:	85 c0                	test   %eax,%eax
436e93:	74 04                	je     0x436e99
436e95:	8b c8                	mov    %eax,%ecx
436e97:	eb 2c                	jmp    0x436ec5
436e99:	8b 54 24 38          	mov    0x38(%esp),%edx
436e9d:	33 c9                	xor    %ecx,%ecx
436e9f:	03 54 24 3c          	add    0x3c(%esp),%edx
436ea3:	8b 73 7c             	mov    0x7c(%ebx),%esi
436ea6:	13 4c 24 40          	adc    0x40(%esp),%ecx
436eaa:	33 c0                	xor    %eax,%eax
436eac:	03 73 70             	add    0x70(%ebx),%esi
436eaf:	13 43 74             	adc    0x74(%ebx),%eax
436eb2:	3b c1                	cmp    %ecx,%eax
436eb4:	77 0a                	ja     0x436ec0
436eb6:	72 04                	jb     0x436ebc
436eb8:	3b f2                	cmp    %edx,%esi
436eba:	77 04                	ja     0x436ec0
436ebc:	33 c9                	xor    %ecx,%ecx
436ebe:	eb 05                	jmp    0x436ec5
436ec0:	b9 26 00 00 00       	mov    $0x26,%ecx
436ec5:	68 28 25 00 00       	push   $0x2528
436eca:	ba 60 19 41 00       	mov    $0x411960,%edx
436ecf:	e8 ac 05 01 00       	call   0x447480
436ed4:	83 7c 24 34 00       	cmpl   $0x0,0x34(%esp)
436ed9:	89 44 24 20          	mov    %eax,0x20(%esp)
436edd:	74 53                	je     0x436f32
436edf:	85 c0                	test   %eax,%eax
436ee1:	78 4f                	js     0x436f32
436ee3:	8b 4b 68             	mov    0x68(%ebx),%ecx
436ee6:	83 e1 08             	and    $0x8,%ecx
436ee9:	83 c9 00             	or     $0x0,%ecx
436eec:	74 44                	je     0x436f32
436eee:	e8 fd 6d 00 00       	call   0x43dcf0
436ef3:	83 c0 10             	add    $0x10,%eax
436ef6:	74 0a                	je     0x436f02
436ef8:	e8 f3 6d 00 00       	call   0x43dcf0
436efd:	83 c0 14             	add    $0x14,%eax
436f00:	eb 02                	jmp    0x436f04
436f02:	33 c0                	xor    %eax,%eax
436f04:	81 3d 30 1a 45 00 aa 	cmpl   $0xfaa,0x451a30
436f0b:	0f 00 00
436f0e:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
436f14:	c7 40 04 2e 25 00 00 	movl   $0x252e,0x4(%eax)
436f1b:	c7 40 08 aa 0f 00 00 	movl   $0xfaa,0x8(%eax)
436f22:	75 06                	jne    0x436f2a
436f24:	ff 15 58 20 45 00    	call   *0x452058
436f2a:	c7 44 24 20 aa 0f 00 	movl   $0xfaa,0x20(%esp)
436f31:	00
436f32:	3b df                	cmp    %edi,%ebx
436f34:	75 0f                	jne    0x436f45
436f36:	83 ec 0c             	sub    $0xc,%esp
436f39:	8d 8c 24 ac 00 00 00 	lea    0xac(%esp),%ecx
436f40:	e8 7b f0 ff ff       	call   0x435fc0
436f45:	8b 43 68             	mov    0x68(%ebx),%eax
436f48:	8d bc 24 38 01 00 00 	lea    0x138(%esp),%edi
436f4f:	b9 32 00 00 00       	mov    $0x32,%ecx
436f54:	89 44 24 18          	mov    %eax,0x18(%esp)
436f58:	8b 43 6c             	mov    0x6c(%ebx),%eax
436f5b:	8b f3                	mov    %ebx,%esi
436f5d:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
436f5f:	c7 84 24 4c 01 00 00 	movl   $0xffffffff,0x14c(%esp)
436f66:	ff ff ff ff
436f6a:	8d 8c 24 60 01 00 00 	lea    0x160(%esp),%ecx
436f71:	c7 84 24 50 01 00 00 	movl   $0xffffffff,0x150(%esp)
436f78:	ff ff ff ff
436f7c:	6a 01                	push   $0x1
436f7e:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
436f85:	00
436f86:	89 44 24 48          	mov    %eax,0x48(%esp)
436f8a:	c7 84 24 64 01 00 00 	movl   $0x0,0x164(%esp)
436f91:	00 00 00 00
436f95:	e8 a6 de fd ff       	call   0x414e40
436f9a:	8b 43 4c             	mov    0x4c(%ebx),%eax
436f9d:	89 84 24 84 01 00 00 	mov    %eax,0x184(%esp)
436fa4:	8b 43 50             	mov    0x50(%ebx),%eax
436fa7:	89 84 24 88 01 00 00 	mov    %eax,0x188(%esp)
436fae:	8b 43 54             	mov    0x54(%ebx),%eax
436fb1:	89 84 24 8c 01 00 00 	mov    %eax,0x18c(%esp)
436fb8:	8b 43 58             	mov    0x58(%ebx),%eax
436fbb:	89 84 24 90 01 00 00 	mov    %eax,0x190(%esp)
436fc2:	8b 43 5c             	mov    0x5c(%ebx),%eax
436fc5:	89 84 24 94 01 00 00 	mov    %eax,0x194(%esp)
436fcc:	8a 43 64             	mov    0x64(%ebx),%al
436fcf:	88 84 24 9c 01 00 00 	mov    %al,0x19c(%esp)
436fd6:	8b 43 60             	mov    0x60(%ebx),%eax
436fd9:	89 84 24 98 01 00 00 	mov    %eax,0x198(%esp)
436fe0:	33 c0                	xor    %eax,%eax
436fe2:	89 84 24 d8 01 00 00 	mov    %eax,0x1d8(%esp)
436fe9:	89 84 24 dc 01 00 00 	mov    %eax,0x1dc(%esp)
436ff0:	89 84 24 e0 01 00 00 	mov    %eax,0x1e0(%esp)
436ff7:	89 84 24 e4 01 00 00 	mov    %eax,0x1e4(%esp)
436ffe:	89 84 24 e8 01 00 00 	mov    %eax,0x1e8(%esp)
437005:	89 84 24 ec 01 00 00 	mov    %eax,0x1ec(%esp)
43700c:	89 84 24 f0 01 00 00 	mov    %eax,0x1f0(%esp)
437013:	8b 43 48             	mov    0x48(%ebx),%eax
437016:	c7 84 24 80 01 00 00 	movl   $0x4117a8,0x180(%esp)
43701d:	a8 17 41 00
437021:	c7 84 24 c4 01 00 00 	movl   $0xffffffff,0x1c4(%esp)
437028:	ff ff ff ff
43702c:	c7 84 24 c8 01 00 00 	movl   $0xffffffff,0x1c8(%esp)
437033:	ff ff ff ff
437037:	3d a8 17 41 00       	cmp    $0x4117a8,%eax
43703c:	74 22                	je     0x437060
43703e:	c6 40 10 00          	movb   $0x0,0x10(%eax)
437042:	33 c9                	xor    %ecx,%ecx
437044:	8b 43 48             	mov    0x48(%ebx),%eax
437047:	c6 40 30 00          	movb   $0x0,0x30(%eax)
43704b:	8b 43 48             	mov    0x48(%ebx),%eax
43704e:	c6 40 50 00          	movb   $0x0,0x50(%eax)
437052:	8b 43 48             	mov    0x48(%ebx),%eax
437055:	89 08                	mov    %ecx,(%eax)
437057:	89 48 04             	mov    %ecx,0x4(%eax)
43705a:	89 48 08             	mov    %ecx,0x8(%eax)
43705d:	89 48 0c             	mov    %ecx,0xc(%eax)
437060:	33 c0                	xor    %eax,%eax
437062:	89 43 4c             	mov    %eax,0x4c(%ebx)
437065:	89 43 50             	mov    %eax,0x50(%ebx)
437068:	89 43 54             	mov    %eax,0x54(%ebx)
43706b:	89 43 5c             	mov    %eax,0x5c(%ebx)
43706e:	c6 43 64 ff          	movb   $0xff,0x64(%ebx)
437072:	c7 43 60 ff ff ff ff 	movl   $0xffffffff,0x60(%ebx)
437079:	f6 43 44 10          	testb  $0x10,0x44(%ebx)
43707d:	74 19                	je     0x437098
43707f:	51                   	push   %ecx
437080:	8b 0d 60 12 45 00    	mov    0x451260,%ecx
437086:	53                   	push   %ebx
437087:	89 83 80 00 00 00    	mov    %eax,0x80(%ebx)
43708d:	c6 43 2c 03          	movb   $0x3,0x2c(%ebx)
437091:	e8 ca 08 00 00       	call   0x437960
437096:	eb 6b                	jmp    0x437103
437098:	e8 53 6c 00 00       	call   0x43dcf0
43709d:	83 78 28 00          	cmpl   $0x0,0x28(%eax)
4370a1:	74 4a                	je     0x4370ed
4370a3:	e8 48 6c 00 00       	call   0x43dcf0
4370a8:	8b 40 28             	mov    0x28(%eax),%eax
4370ab:	8b 48 44             	mov    0x44(%eax),%ecx
4370ae:	c7 80 80 00 00 00 00 	movl   $0x0,0x80(%eax)
4370b5:	00 00 00
4370b8:	f6 c1 10             	test   $0x10,%cl
4370bb:	74 0d                	je     0x4370ca
4370bd:	51                   	push   %ecx
4370be:	8b 0d 60 12 45 00    	mov    0x451260,%ecx
4370c4:	c6 40 2c 03          	movb   $0x3,0x2c(%eax)
4370c8:	eb 11                	jmp    0x4370db
4370ca:	83 e1 df             	and    $0xffffffdf,%ecx
4370cd:	c6 40 2c 01          	movb   $0x1,0x2c(%eax)
4370d1:	89 48 44             	mov    %ecx,0x44(%eax)
4370d4:	51                   	push   %ecx
4370d5:	8b 0d 64 12 45 00    	mov    0x451264,%ecx
4370db:	50                   	push   %eax
4370dc:	e8 7f 08 00 00       	call   0x437960
4370e1:	e8 0a 6c 00 00       	call   0x43dcf0
4370e6:	c7 40 28 00 00 00 00 	movl   $0x0,0x28(%eax)
4370ed:	c7 83 80 00 00 00 00 	movl   $0x0,0x80(%ebx)
4370f4:	00 00 00
4370f7:	c6 43 2c 02          	movb   $0x2,0x2c(%ebx)
4370fb:	e8 f0 6b 00 00       	call   0x43dcf0
437100:	89 58 28             	mov    %ebx,0x28(%eax)
437103:	8b b4 24 b8 01 00 00 	mov    0x1b8(%esp),%esi
43710a:	8d 84 24 38 01 00 00 	lea    0x138(%esp),%eax
437111:	ff 76 10             	push   0x10(%esi)
437114:	8b 76 0c             	mov    0xc(%esi),%esi
437117:	8b ce                	mov    %esi,%ecx
437119:	ff 74 24 24          	push   0x24(%esp)
43711d:	50                   	push   %eax
43711e:	ff 15 84 23 45 00    	call   *0x452384
437124:	ff d6                	call   *%esi
437126:	e8 c5 6b 00 00       	call   0x43dcf0
43712b:	8b 70 28             	mov    0x28(%eax),%esi
43712e:	e8 bd 6b 00 00       	call   0x43dcf0
437133:	c7 40 28 00 00 00 00 	movl   $0x0,0x28(%eax)
43713a:	85 f6                	test   %esi,%esi
43713c:	74 34                	je     0x437172
43713e:	8b 46 44             	mov    0x44(%esi),%eax
437141:	c7 86 80 00 00 00 00 	movl   $0x0,0x80(%esi)
437148:	00 00 00
43714b:	51                   	push   %ecx
43714c:	56                   	push   %esi
43714d:	a8 10                	test   $0x10,%al
43714f:	74 0c                	je     0x43715d
437151:	8b 0d 60 12 45 00    	mov    0x451260,%ecx
437157:	c6 46 2c 03          	movb   $0x3,0x2c(%esi)
43715b:	eb 10                	jmp    0x43716d
43715d:	8b 0d 64 12 45 00    	mov    0x451264,%ecx
437163:	83 e0 df             	and    $0xffffffdf,%eax
437166:	89 46 44             	mov    %eax,0x44(%esi)
437169:	c6 46 2c 01          	movb   $0x1,0x2c(%esi)
43716d:	e8 ee 07 00 00       	call   0x437960
437172:	e8 19 64 ff ff       	call   0x42d590
437177:	8b d8                	mov    %eax,%ebx
437179:	8b c2                	mov    %edx,%eax
43717b:	2b 5c 24 0c          	sub    0xc(%esp),%ebx
43717f:	1b 44 24 10          	sbb    0x10(%esp),%eax
437183:	83 3d 50 12 45 00 00 	cmpl   $0x0,0x451250
43718a:	89 44 24 10          	mov    %eax,0x10(%esp)
43718e:	75 1d                	jne    0x4371ad
437190:	68 48 12 45 00       	push   $0x451248
437195:	ff 15 f4 21 45 00    	call   *0x4521f4
43719b:	85 c0                	test   %eax,%eax
43719d:	8b 44 24 10          	mov    0x10(%esp),%eax
4371a1:	74 4b                	je     0x4371ee
4371a3:	c7 05 50 12 45 00 02 	movl   $0x2,0x451250
4371aa:	00 00 00
4371ad:	8b 3d 48 12 45 00    	mov    0x451248,%edi
4371b3:	8b 35 4c 12 45 00    	mov    0x45124c,%esi
4371b9:	3d c6 10 00 00       	cmp    $0x10c6,%eax
4371be:	77 4d                	ja     0x43720d
4371c0:	72 08                	jb     0x4371ca
4371c2:	81 fb ed b5 a0 f7    	cmp    $0xf7a0b5ed,%ebx
4371c8:	73 43                	jae    0x43720d
4371ca:	b9 40 42 0f 00       	mov    $0xf4240,%ecx
4371cf:	f7 e1                	mul    %ecx
4371d1:	ba 40 42 0f 00       	mov    $0xf4240,%edx
4371d6:	8b c8                	mov    %eax,%ecx
4371d8:	8b c3                	mov    %ebx,%eax
4371da:	f7 e2                	mul    %edx
4371dc:	56                   	push   %esi