4548d2:	57                   	push   %edi
4548d3:	8b d8                	mov    %eax,%ebx
4548d5:	8b 7b 5c             	mov    0x5c(%ebx),%edi
4548d8:	85 ff                	test   %edi,%edi
4548da:	74 11                	je     0x4548ed
4548dc:	8b d3                	mov    %ebx,%edx
4548de:	8b c7                	mov    %edi,%eax
4548e0:	66 be f0 ff          	mov    $0xfff0,%si
4548e4:	e8 8b f3 fa ff       	call   0x403c74
4548e9:	84 c0                	test   %al,%al
4548eb:	75 32                	jne    0x45491f
4548ed:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
4548f2:	8b 00                	mov    (%eax),%eax
4548f4:	8b d3                	mov    %ebx,%edx
4548f6:	e8 e9 66 01 00       	call   0x46afe4
4548fb:	84 c0                	test   %al,%al
4548fd:	75 20                	jne    0x45491f
4548ff:	8b c3                	mov    %ebx,%eax
454901:	e8 66 07 fd ff       	call   0x42506c
454906:	84 c0                	test   %al,%al
454908:	75 15                	jne    0x45491f
45490a:	8b cb                	mov    %ebx,%ecx
45490c:	33 d2                	xor    %edx,%edx
45490e:	b8 3f b0 00 00       	mov    $0xb03f,%eax
454913:	e8 dc 0d ff ff       	call   0x4456f4
454918:	48                   	dec    %eax
454919:	74 04                	je     0x45491f
45491b:	33 c0                	xor    %eax,%eax
45491d:	eb 02                	jmp    0x454921
45491f:	b0 01                	mov    $0x1,%al
454921:	5f                   	pop    %edi
454922:	5e                   	pop    %esi
454923:	5b                   	pop    %ebx
454924:	c3                   	ret
454925:	8d 40 00             	lea    0x0(%eax),%eax
454928:	55                   	push   %ebp
454929:	8b ec                	mov    %esp,%ebp
45492b:	51                   	push   %ecx
45492c:	53                   	push   %ebx
45492d:	56                   	push   %esi
45492e:	84 d2                	test   %dl,%dl
454930:	74 08                	je     0x45493a
454932:	83 c4 f0             	add    $0xfffffff0,%esp
454935:	e8 a2 f4 fa ff       	call   0x403ddc
45493a:	88 55 ff             	mov    %dl,-0x1(%ebp)
45493d:	8b d8                	mov    %eax,%ebx
45493f:	33 d2                	xor    %edx,%edx
454941:	8b c3                	mov    %ebx,%eax
454943:	e8 10 fd fc ff       	call   0x424658
454948:	b2 01                	mov    $0x1,%dl
45494a:	a1 24 94 41 00       	mov    0x419424,%eax
45494f:	e8 f4 f0 fa ff       	call   0x403a48
454954:	89 43 30             	mov    %eax,0x30(%ebx)
454957:	b2 01                	mov    $0x1,%dl
454959:	a1 40 56 45 00       	mov    0x455640,%eax
45495e:	e8 e5 f0 fa ff       	call   0x403a48
454963:	8b f0                	mov    %eax,%esi
454965:	89 73 34             	mov    %esi,0x34(%ebx)
454968:	89 5e 0c             	mov    %ebx,0xc(%esi)
45496b:	c7 46 08 ac 4a 45 00 	movl   $0x454aac,0x8(%esi)
454972:	c6 43 58 00          	movb   $0x0,0x58(%ebx)
454976:	8b c3                	mov    %ebx,%eax
454978:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
45497c:	74 0f                	je     0x45498d
45497e:	e8 b1 f4 fa ff       	call   0x403e34
454983:	64 8f 05 00 00 00 00 	pop    %fs:0x0
45498a:	83 c4 0c             	add    $0xc,%esp
45498d:	8b c3                	mov    %ebx,%eax
45498f:	5e                   	pop    %esi
454990:	5b                   	pop    %ebx
454991:	59                   	pop    %ecx
454992:	5d                   	pop    %ebp
454993:	c3                   	ret
454994:	53                   	push   %ebx
454995:	56                   	push   %esi
454996:	57                   	push   %edi
454997:	e8 a8 f4 fa ff       	call   0x403e44
45499c:	8b da                	mov    %edx,%ebx
45499e:	8b f8                	mov    %eax,%edi
4549a0:	8b 47 34             	mov    0x34(%edi),%eax
4549a3:	e8 d0 f0 fa ff       	call   0x403a78
4549a8:	eb 0c                	jmp    0x4549b6
4549aa:	8b c6                	mov    %esi,%eax
4549ac:	e8 f7 74 fc ff       	call   0x41bea8
4549b1:	e8 c2 f0 fa ff       	call   0x403a78
4549b6:	8b 77 30             	mov    0x30(%edi),%esi
4549b9:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4549bd:	7f eb                	jg     0x4549aa
4549bf:	8b 47 30             	mov    0x30(%edi),%eax
4549c2:	e8 b1 f0 fa ff       	call   0x403a78
4549c7:	8b d3                	mov    %ebx,%edx
4549c9:	80 e2 fc             	and    $0xfc,%dl
4549cc:	8b c7                	mov    %edi,%eax
4549ce:	e8 d1 fc fc ff       	call   0x4246a4
4549d3:	84 db                	test   %bl,%bl
4549d5:	7e 07                	jle    0x4549de
4549d7:	8b c7                	mov    %edi,%eax
4549d9:	e8 4e f4 fa ff       	call   0x403e2c
4549de:	5f                   	pop    %edi
4549df:	5e                   	pop    %esi
4549e0:	5b                   	pop    %ebx
4549e1:	c3                   	ret
4549e2:	8b c0                	mov    %eax,%eax
4549e4:	55                   	push   %ebp
4549e5:	8b ec                	mov    %esp,%ebp
4549e7:	83 c4 f8             	add    $0xfffffff8,%esp
4549ea:	53                   	push   %ebx
4549eb:	56                   	push   %esi
4549ec:	89 55 f8             	mov    %edx,-0x8(%ebp)
4549ef:	89 45 fc             	mov    %eax,-0x4(%ebp)
4549f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4549f5:	8b 40 30             	mov    0x30(%eax),%eax
4549f8:	8b 58 08             	mov    0x8(%eax),%ebx
4549fb:	4b                   	dec    %ebx
4549fc:	85 db                	test   %ebx,%ebx
4549fe:	7c 23                	jl     0x454a23
454a00:	43                   	inc    %ebx
454a01:	33 f6                	xor    %esi,%esi
454a03:	8b 45 fc             	mov    -0x4(%ebp),%eax
454a06:	8b 40 30             	mov    0x30(%eax),%eax
454a09:	8b 40 04             	mov    0x4(%eax),%eax
454a0c:	8b 04 b0             	mov    (%eax,%esi,4),%eax
454a0f:	8b 50 04             	mov    0x4(%eax),%edx
454a12:	3b 55 f8             	cmp    -0x8(%ebp),%edx
454a15:	75 08                	jne    0x454a1f
454a17:	8b d0                	mov    %eax,%edx
454a19:	8b 45 0c             	mov    0xc(%ebp),%eax
454a1c:	ff 55 08             	call   *0x8(%ebp)
454a1f:	46                   	inc    %esi
454a20:	4b                   	dec    %ebx
454a21:	75 e0                	jne    0x454a03
454a23:	5e                   	pop    %esi
454a24:	5b                   	pop    %ebx
454a25:	59                   	pop    %ecx
454a26:	59                   	pop    %ecx
454a27:	5d                   	pop    %ebp
454a28:	c2 08 00             	ret    $0x8
454a2b:	90                   	nop
454a2c:	53                   	push   %ebx
454a2d:	56                   	push   %esi
454a2e:	57                   	push   %edi
454a2f:	8b f9                	mov    %ecx,%edi
454a31:	8b f2                	mov    %edx,%esi
454a33:	8b d8                	mov    %eax,%ebx
454a35:	8b d6                	mov    %esi,%edx
454a37:	8b 43 30             	mov    0x30(%ebx),%eax
454a3a:	e8 dd 73 fc ff       	call   0x41be1c
454a3f:	85 c0                	test   %eax,%eax
454a41:	7c 14                	jl     0x454a57
454a43:	8b c6                	mov    %esi,%eax
454a45:	8b 15 dc 3e 45 00    	mov    0x453edc,%edx
454a4b:	e8 d8 f1 fa ff       	call   0x403c28
454a50:	8b d7                	mov    %edi,%edx
454a52:	e8 59 fd ff ff       	call   0x4547b0
454a57:	5f                   	pop    %edi
454a58:	5e                   	pop    %esi
454a59:	5b                   	pop    %ebx
454a5a:	c3                   	ret
454a5b:	90                   	nop
454a5c:	53                   	push   %ebx
454a5d:	56                   	push   %esi
454a5e:	8b f2                	mov    %edx,%esi
454a60:	8b d8                	mov    %eax,%ebx
454a62:	8b d6                	mov    %esi,%edx
454a64:	8b 43 30             	mov    0x30(%ebx),%eax
454a67:	e8 54 73 fc ff       	call   0x41bdc0
454a6c:	5e                   	pop    %esi
454a6d:	5b                   	pop    %ebx
454a6e:	c3                   	ret
454a6f:	90                   	nop
454a70:	8b 40 30             	mov    0x30(%eax),%eax
454a73:	8b 40 08             	mov    0x8(%eax),%eax
454a76:	c3                   	ret
454a77:	90                   	nop
454a78:	53                   	push   %ebx
454a79:	56                   	push   %esi
454a7a:	8b f2                	mov    %edx,%esi
454a7c:	8b d8                	mov    %eax,%ebx
454a7e:	8b 43 38             	mov    0x38(%ebx),%eax
454a81:	85 c0                	test   %eax,%eax
454a83:	74 08                	je     0x454a8d
454a85:	8b 53 34             	mov    0x34(%ebx),%edx
454a88:	e8 ef 1e 00 00       	call   0x45697c
454a8d:	8b c6                	mov    %esi,%eax
454a8f:	89 43 38             	mov    %eax,0x38(%ebx)
454a92:	85 c0                	test   %eax,%eax
454a94:	74 12                	je     0x454aa8
454a96:	8b 53 34             	mov    0x34(%ebx),%edx
454a99:	e8 22 1f 00 00       	call   0x4569c0
454a9e:	8b d3                	mov    %ebx,%edx
454aa0:	8b 43 38             	mov    0x38(%ebx),%eax
454aa3:	e8 80 fc fc ff       	call   0x424728
454aa8:	5e                   	pop    %esi
454aa9:	5b                   	pop    %ebx
454aaa:	c3                   	ret
454aab:	90                   	nop
454aac:	3b 50 38             	cmp    0x38(%eax),%edx
454aaf:	75 05                	jne    0x454ab6
454ab1:	8b 10                	mov    (%eax),%edx
454ab3:	ff 52 30             	call   *0x30(%edx)
454ab6:	c3                   	ret
454ab7:	90                   	nop
454ab8:	53                   	push   %ebx
454ab9:	56                   	push   %esi
454aba:	57                   	push   %edi
454abb:	8b d9                	mov    %ecx,%ebx
454abd:	8b fa                	mov    %edx,%edi
454abf:	8b f0                	mov    %eax,%esi
454ac1:	8b cb                	mov    %ebx,%ecx
454ac3:	8b d7                	mov    %edi,%edx
454ac5:	8b c6                	mov    %esi,%eax
454ac7:	e8 a8 fe fc ff       	call   0x424974
454acc:	80 fb 01             	cmp    $0x1,%bl
454acf:	75 2a                	jne    0x454afb
454ad1:	3b 7e 38             	cmp    0x38(%esi),%edi
454ad4:	75 0b                	jne    0x454ae1
454ad6:	33 d2                	xor    %edx,%edx
454ad8:	8b c6                	mov    %esi,%eax
454ada:	8b 08                	mov    (%eax),%ecx
454adc:	ff 51 34             	call   *0x34(%ecx)
454adf:	eb 1a                	jmp    0x454afb
454ae1:	8b c7                	mov    %edi,%eax
454ae3:	8b 15 dc 3e 45 00    	mov    0x453edc,%edx
454ae9:	e8 16 f1 fa ff       	call   0x403c04
454aee:	84 c0                	test   %al,%al
454af0:	74 09                	je     0x454afb
454af2:	8b d7                	mov    %edi,%edx
454af4:	8b c6                	mov    %esi,%eax
454af6:	e8 25 00 00 00       	call   0x454b20
454afb:	5f                   	pop    %edi
454afc:	5e                   	pop    %esi
454afd:	5b                   	pop    %ebx
454afe:	c3                   	ret
454aff:	90                   	nop
454b00:	53                   	push   %ebx
454b01:	56                   	push   %esi
454b02:	8b f2                	mov    %edx,%esi
454b04:	8b d8                	mov    %eax,%ebx
454b06:	8b d6                	mov    %esi,%edx
454b08:	8b 43 30             	mov    0x30(%ebx),%eax
454b0b:	e8 04 71 fc ff       	call   0x41bc14
454b10:	89 5e 5c             	mov    %ebx,0x5c(%esi)
454b13:	8b d3                	mov    %ebx,%edx
454b15:	8b c6                	mov    %esi,%eax
454b17:	e8 0c fc fc ff       	call   0x424728
454b1c:	5e                   	pop    %esi
454b1d:	5b                   	pop    %ebx
454b1e:	c3                   	ret
454b1f:	90                   	nop
454b20:	53                   	push   %ebx
454b21:	56                   	push   %esi
454b22:	8b f2                	mov    %edx,%esi
454b24:	8b d8                	mov    %eax,%ebx
454b26:	8b d6                	mov    %esi,%edx
454b28:	8b 43 30             	mov    0x30(%ebx),%eax
454b2b:	e8 30 74 fc ff       	call   0x41bf60
454b30:	85 c0                	test   %eax,%eax
454b32:	7c 05                	jl     0x454b39
454b34:	33 c0                	xor    %eax,%eax
454b36:	89 46 5c             	mov    %eax,0x5c(%esi)
454b39:	5e                   	pop    %esi
454b3a:	5b                   	pop    %ebx
454b3b:	c3                   	ret
454b3c:	53                   	push   %ebx
454b3d:	56                   	push   %esi
454b3e:	57                   	push   %edi
454b3f:	8b d8                	mov    %eax,%ebx
454b41:	66 83 7b 42 00       	cmpw   $0x0,0x42(%ebx)
454b46:	74 08                	je     0x454b50
454b48:	8b d3                	mov    %ebx,%edx
454b4a:	8b 43 44             	mov    0x44(%ebx),%eax
454b4d:	ff 53 40             	call   *0x40(%ebx)
454b50:	8b 43 30             	mov    0x30(%ebx),%eax
454b53:	8b 70 08             	mov    0x8(%eax),%esi
454b56:	4e                   	dec    %esi
454b57:	85 f6                	test   %esi,%esi
454b59:	7c 15                	jl     0x454b70
454b5b:	46                   	inc    %esi
454b5c:	33 ff                	xor    %edi,%edi
454b5e:	8b 43 30             	mov    0x30(%ebx),%eax
454b61:	8b 40 04             	mov    0x4(%eax),%eax
454b64:	8b 04 b8             	mov    (%eax,%edi,4),%eax
454b67:	8b 10                	mov    (%eax),%edx
454b69:	ff 52 30             	call   *0x30(%edx)
454b6c:	47                   	inc    %edi
454b6d:	4e                   	dec    %esi
454b6e:	75 ee                	jne    0x454b5e
454b70:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
454b74:	74 28                	je     0x454b9e
454b76:	8b 73 04             	mov    0x4(%ebx),%esi
454b79:	8b c6                	mov    %esi,%eax
454b7b:	8b 15 a4 f5 45 00    	mov    0x45f5a4,%edx
454b81:	e8 7e f0 fa ff       	call   0x403c04
454b86:	84 c0                	test   %al,%al
454b88:	74 14                	je     0x454b9e
454b8a:	83 be 50 02 00 00 00 	cmpl   $0x0,0x250(%esi)
454b91:	74 0b                	je     0x454b9e
454b93:	8b 86 50 02 00 00    	mov    0x250(%esi),%eax
454b99:	8b 10                	mov    (%eax),%edx
454b9b:	ff 52 0c             	call   *0xc(%edx)
454b9e:	5f                   	pop    %edi
454b9f:	5e                   	pop    %esi
454ba0:	5b                   	pop    %ebx
454ba1:	c3                   	ret
454ba2:	8b c0                	mov    %eax,%eax
454ba4:	53                   	push   %ebx
454ba5:	56                   	push   %esi
454ba6:	57                   	push   %edi
454ba7:	55                   	push   %ebp
454ba8:	51                   	push   %ecx
454ba9:	8b f2                	mov    %edx,%esi
454bab:	89 04 24             	mov    %eax,(%esp)
454bae:	8b 46 08             	mov    0x8(%esi),%eax
454bb1:	e8 fe be 00 00       	call   0x460ab4
454bb6:	8b d8                	mov    %eax,%ebx
454bb8:	66 8b 46 04          	mov    0x4(%esi),%ax
454bbc:	8b d3                	mov    %ebx,%edx
454bbe:	e8 55 35 00 00       	call   0x458118
454bc3:	8b e8                	mov    %eax,%ebp
454bc5:	66 85 ed             	test   %bp,%bp
454bc8:	74 5e                	je     0x454c28
454bca:	8b 04 24             	mov    (%esp),%eax
454bcd:	8b 40 30             	mov    0x30(%eax),%eax
454bd0:	8b 70 08             	mov    0x8(%eax),%esi
454bd3:	4e                   	dec    %esi
454bd4:	85 f6                	test   %esi,%esi
454bd6:	7c 50                	jl     0x454c28
454bd8:	46                   	inc    %esi
454bd9:	33 ff                	xor    %edi,%edi
454bdb:	8b 04 24             	mov    (%esp),%eax
454bde:	8b 40 30             	mov    0x30(%eax),%eax
454be1:	8b 40 04             	mov    0x4(%eax),%eax
454be4:	8b 1c b8             	mov    (%eax,%edi,4),%ebx
454be7:	8b c3                	mov    %ebx,%eax
454be9:	8b 15 2c 42 45 00    	mov    0x45422c,%edx
454bef:	e8 10 f0 fa ff       	call   0x403c04
454bf4:	84 c0                	test   %al,%al
454bf6:	74 2c                	je     0x454c24
454bf8:	66 3b ab 84 00 00 00 	cmp    0x84(%ebx),%bp
454bff:	74 1a                	je     0x454c1b
454c01:	83 bb 90 00 00 00 00 	cmpl   $0x0,0x90(%ebx)
454c08:	74 1a                	je     0x454c24
454c0a:	8b c3                	mov    %ebx,%eax
454c0c:	e8 9b 08 00 00       	call   0x4554ac
454c11:	8b d5                	mov    %ebp,%edx
454c13:	e8 88 09 00 00       	call   0x4555a0
454c18:	40                   	inc    %eax
454c19:	74 09                	je     0x454c24
454c1b:	8b c3                	mov    %ebx,%eax
454c1d:	8b 10                	mov    (%eax),%edx