52de6a:	cc                   	int3
52de6b:	cc                   	int3
52de6c:	cc                   	int3
52de6d:	cc                   	int3
52de6e:	cc                   	int3
52de6f:	cc                   	int3
52de70:	55                   	push   %ebp
52de71:	8b ec                	mov    %esp,%ebp
52de73:	51                   	push   %ecx
52de74:	53                   	push   %ebx
52de75:	8b 5d 0c             	mov    0xc(%ebp),%ebx
52de78:	85 db                	test   %ebx,%ebx
52de7a:	75 07                	jne    0x52de83
52de7c:	33 c0                	xor    %eax,%eax
52de7e:	5b                   	pop    %ebx
52de7f:	8b e5                	mov    %ebp,%esp
52de81:	5d                   	pop    %ebp
52de82:	c3                   	ret
52de83:	56                   	push   %esi
52de84:	57                   	push   %edi
52de85:	8b 7d 08             	mov    0x8(%ebp),%edi
52de88:	6a 00                	push   $0x0
52de8a:	6a 08                	push   $0x8
52de8c:	57                   	push   %edi
52de8d:	e8 4e 35 ff ff       	call   0x5213e0
52de92:	8b f0                	mov    %eax,%esi
52de94:	83 c4 0c             	add    $0xc,%esp
52de97:	89 75 fc             	mov    %esi,-0x4(%ebp)
52de9a:	85 f6                	test   %esi,%esi
52de9c:	74 28                	je     0x52dec6
52de9e:	8b 43 04             	mov    0x4(%ebx),%eax
52dea1:	89 46 04             	mov    %eax,0x4(%esi)
52dea4:	8b 43 04             	mov    0x4(%ebx),%eax
52dea7:	c1 e0 03             	shl    $0x3,%eax
52deaa:	6a 00                	push   $0x0
52deac:	50                   	push   %eax
52dead:	57                   	push   %edi
52deae:	e8 2d 35 ff ff       	call   0x5213e0
52deb3:	83 c4 0c             	add    $0xc,%esp
52deb6:	89 06                	mov    %eax,(%esi)
52deb8:	85 c0                	test   %eax,%eax
52deba:	75 13                	jne    0x52decf
52debc:	56                   	push   %esi
52debd:	57                   	push   %edi
52debe:	e8 ad 34 ff ff       	call   0x521370
52dec3:	83 c4 08             	add    $0x8,%esp
52dec6:	5f                   	pop    %edi
52dec7:	5e                   	pop    %esi
52dec8:	33 c0                	xor    %eax,%eax
52deca:	5b                   	pop    %ebx
52decb:	8b e5                	mov    %ebp,%esp
52decd:	5d                   	pop    %ebp
52dece:	c3                   	ret
52decf:	33 c0                	xor    %eax,%eax
52ded1:	89 45 0c             	mov    %eax,0xc(%ebp)
52ded4:	39 43 04             	cmp    %eax,0x4(%ebx)
52ded7:	7e 36                	jle    0x52df0f
52ded9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
52dee0:	8b 3e                	mov    (%esi),%edi
52dee2:	8b 33                	mov    (%ebx),%esi
52dee4:	c1 e0 03             	shl    $0x3,%eax
52dee7:	03 f0                	add    %eax,%esi
52dee9:	03 f8                	add    %eax,%edi
52deeb:	ff 36                	push   (%esi)
52deed:	ff 75 08             	push   0x8(%ebp)
52def0:	e8 bb 37 ff ff       	call   0x5216b0
52def5:	89 07                	mov    %eax,(%edi)
52def7:	83 c4 08             	add    $0x8,%esp
52defa:	8b 46 04             	mov    0x4(%esi),%eax
52defd:	8b 75 fc             	mov    -0x4(%ebp),%esi
52df00:	89 47 04             	mov    %eax,0x4(%edi)
52df03:	8b 45 0c             	mov    0xc(%ebp),%eax
52df06:	40                   	inc    %eax
52df07:	89 45 0c             	mov    %eax,0xc(%ebp)
52df0a:	3b 43 04             	cmp    0x4(%ebx),%eax
52df0d:	7c d1                	jl     0x52dee0
52df0f:	5f                   	pop    %edi
52df10:	8b c6                	mov    %esi,%eax
52df12:	5e                   	pop    %esi
52df13:	5b                   	pop    %ebx
52df14:	8b e5                	mov    %ebp,%esp
52df16:	5d                   	pop    %ebp
52df17:	c3                   	ret
52df18:	cc                   	int3
52df19:	cc                   	int3
52df1a:	cc                   	int3
52df1b:	cc                   	int3
52df1c:	cc                   	int3
52df1d:	cc                   	int3
52df1e:	cc                   	int3
52df1f:	cc                   	int3
52df20:	55                   	push   %ebp
52df21:	8b ec                	mov    %esp,%ebp
52df23:	51                   	push   %ecx
52df24:	8b 45 08             	mov    0x8(%ebp),%eax
52df27:	85 c0                	test   %eax,%eax
52df29:	75 07                	jne    0x52df32
52df2b:	83 c8 ff             	or     $0xffffffff,%eax
52df2e:	8b e5                	mov    %ebp,%esp
52df30:	5d                   	pop    %ebp
52df31:	c3                   	ret
52df32:	8b 48 04             	mov    0x4(%eax),%ecx
52df35:	53                   	push   %ebx
52df36:	56                   	push   %esi
52df37:	57                   	push   %edi
52df38:	33 ff                	xor    %edi,%edi
52df3a:	89 4d 08             	mov    %ecx,0x8(%ebp)
52df3d:	85 c9                	test   %ecx,%ecx
52df3f:	7e 45                	jle    0x52df86
52df41:	8b 18                	mov    (%eax),%ebx
52df43:	8b 75 0c             	mov    0xc(%ebp),%esi
52df46:	8b 03                	mov    (%ebx),%eax
52df48:	2b f0                	sub    %eax,%esi
52df4a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
52df50:	0f b6 10             	movzbl (%eax),%edx
52df53:	0f b6 0c 06          	movzbl (%esi,%eax,1),%ecx
52df57:	3b d1                	cmp    %ecx,%edx
52df59:	75 0d                	jne    0x52df68
52df5b:	85 d2                	test   %edx,%edx
52df5d:	75 1b                	jne    0x52df7a
52df5f:	8b c7                	mov    %edi,%eax
52df61:	5f                   	pop    %edi
52df62:	5e                   	pop    %esi
52df63:	5b                   	pop    %ebx
52df64:	8b e5                	mov    %ebp,%esp
52df66:	5d                   	pop    %ebp
52df67:	c3                   	ret
52df68:	0f b6 89 20 2a 6b 00 	movzbl 0x6b2a20(%ecx),%ecx
52df6f:	0f b6 92 20 2a 6b 00 	movzbl 0x6b2a20(%edx),%edx
52df76:	2b d1                	sub    %ecx,%edx
52df78:	75 03                	jne    0x52df7d
52df7a:	40                   	inc    %eax
52df7b:	eb d3                	jmp    0x52df50
52df7d:	47                   	inc    %edi
52df7e:	83 c3 08             	add    $0x8,%ebx
52df81:	3b 7d 08             	cmp    0x8(%ebp),%edi
52df84:	7c bd                	jl     0x52df43
52df86:	5f                   	pop    %edi
52df87:	5e                   	pop    %esi
52df88:	83 c8 ff             	or     $0xffffffff,%eax
52df8b:	5b                   	pop    %ebx
52df8c:	8b e5                	mov    %ebp,%esp
52df8e:	5d                   	pop    %ebp
52df8f:	c3                   	ret
52df90:	55                   	push   %ebp
52df91:	8b ec                	mov    %esp,%ebp
52df93:	ff 75 08             	push   0x8(%ebp)
52df96:	e8 65 d0 fc ff       	call   0x4fb000
52df9b:	83 c4 04             	add    $0x4,%esp
52df9e:	3c 42                	cmp    $0x42,%al
52dfa0:	7d 07                	jge    0x52dfa9
52dfa2:	b8 01 00 00 00       	mov    $0x1,%eax
52dfa7:	5d                   	pop    %ebp
52dfa8:	c3                   	ret
52dfa9:	75 0b                	jne    0x52dfb6
52dfab:	33 c0                	xor    %eax,%eax
52dfad:	80 7d 0c 42          	cmpb   $0x42,0xc(%ebp)
52dfb1:	0f 94 c0             	sete   %al
52dfb4:	5d                   	pop    %ebp
52dfb5:	c3                   	ret
52dfb6:	33 c0                	xor    %eax,%eax
52dfb8:	80 7d 0c 43          	cmpb   $0x43,0xc(%ebp)
52dfbc:	0f 9d c0             	setge  %al
52dfbf:	5d                   	pop    %ebp
52dfc0:	c3                   	ret
52dfc1:	cc                   	int3
52dfc2:	cc                   	int3
52dfc3:	cc                   	int3
52dfc4:	cc                   	int3
52dfc5:	cc                   	int3
52dfc6:	cc                   	int3
52dfc7:	cc                   	int3
52dfc8:	cc                   	int3
52dfc9:	cc                   	int3
52dfca:	cc                   	int3
52dfcb:	cc                   	int3
52dfcc:	cc                   	int3
52dfcd:	cc                   	int3
52dfce:	cc                   	int3
52dfcf:	cc                   	int3
52dfd0:	55                   	push   %ebp
52dfd1:	8b ec                	mov    %esp,%ebp
52dfd3:	56                   	push   %esi
52dfd4:	8b 75 0c             	mov    0xc(%ebp),%esi
52dfd7:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
52dfdb:	0f 85 9a 00 00 00    	jne    0x52e07b
52dfe1:	8b 46 0c             	mov    0xc(%esi),%eax
52dfe4:	89 45 0c             	mov    %eax,0xc(%ebp)
52dfe7:	0f b7 46 34          	movzwl 0x34(%esi),%eax
52dfeb:	99                   	cltd
52dfec:	83 c0 01             	add    $0x1,%eax
52dfef:	83 d2 00             	adc    $0x0,%edx
52dff2:	52                   	push   %edx
52dff3:	50                   	push   %eax
52dff4:	e8 67 2f 00 00       	call   0x530f60
52dff9:	83 c4 08             	add    $0x8,%esp
52dffc:	89 46 10             	mov    %eax,0x10(%esi)
52dfff:	85 c0                	test   %eax,%eax
52e001:	75 10                	jne    0x52e013
52e003:	ff 75 08             	push   0x8(%ebp)
52e006:	e8 85 38 00 00       	call   0x531890
52e00b:	83 c4 04             	add    $0x4,%esp
52e00e:	33 c0                	xor    %eax,%eax
52e010:	5e                   	pop    %esi
52e011:	5d                   	pop    %ebp
52e012:	c3                   	ret
52e013:	57                   	push   %edi
52e014:	33 c0                	xor    %eax,%eax
52e016:	33 ff                	xor    %edi,%edi
52e018:	66 3b 46 34          	cmp    0x34(%esi),%ax
52e01c:	73 55                	jae    0x52e073
52e01e:	53                   	push   %ebx
52e01f:	33 db                	xor    %ebx,%ebx
52e021:	8b 46 04             	mov    0x4(%esi),%eax
52e024:	0f b7 04 78          	movzwl (%eax,%edi,2),%eax
52e028:	66 85 c0             	test   %ax,%ax
52e02b:	78 10                	js     0x52e03d
52e02d:	98                   	cwtl
52e02e:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
52e031:	8b 45 0c             	mov    0xc(%ebp),%eax
52e034:	8b 40 04             	mov    0x4(%eax),%eax
52e037:	8a 44 88 0d          	mov    0xd(%eax,%ecx,4),%al
52e03b:	eb 15                	jmp    0x52e052
52e03d:	66 83 f8 ff          	cmp    $0xffff,%ax
52e041:	74 1b                	je     0x52e05e
52e043:	8b 46 28             	mov    0x28(%esi),%eax
52e046:	ff 74 18 04          	push   0x4(%eax,%ebx,1)
52e04a:	e8 61 55 ff ff       	call   0x5235b0
52e04f:	83 c4 04             	add    $0x4,%esp
52e052:	3c 41                	cmp    $0x41,%al
52e054:	7d 04                	jge    0x52e05a
52e056:	b0 41                	mov    $0x41,%al
52e058:	eb 06                	jmp    0x52e060
52e05a:	3c 43                	cmp    $0x43,%al
52e05c:	7e 02                	jle    0x52e060
52e05e:	b0 43                	mov    $0x43,%al
52e060:	8b 4e 10             	mov    0x10(%esi),%ecx
52e063:	83 c3 14             	add    $0x14,%ebx
52e066:	88 04 0f             	mov    %al,(%edi,%ecx,1)
52e069:	47                   	inc    %edi
52e06a:	0f b7 46 34          	movzwl 0x34(%esi),%eax
52e06e:	3b f8                	cmp    %eax,%edi
52e070:	7c af                	jl     0x52e021
52e072:	5b                   	pop    %ebx
52e073:	8b 46 10             	mov    0x10(%esi),%eax
52e076:	c6 04 07 00          	movb   $0x0,(%edi,%eax,1)
52e07a:	5f                   	pop    %edi
52e07b:	8b 46 10             	mov    0x10(%esi),%eax
52e07e:	5e                   	pop    %esi
52e07f:	5d                   	pop    %ebp
52e080:	c3                   	ret
52e081:	cc                   	int3
52e082:	cc                   	int3
52e083:	cc                   	int3
52e084:	cc                   	int3
52e085:	cc                   	int3
52e086:	cc                   	int3
52e087:	cc                   	int3
52e088:	cc                   	int3
52e089:	cc                   	int3
52e08a:	cc                   	int3
52e08b:	cc                   	int3
52e08c:	cc                   	int3
52e08d:	cc                   	int3
52e08e:	cc                   	int3
52e08f:	cc                   	int3
52e090:	55                   	push   %ebp
52e091:	8b ec                	mov    %esp,%ebp
52e093:	8b 4d 08             	mov    0x8(%ebp),%ecx
52e096:	8b 41 0c             	mov    0xc(%ecx),%eax
52e099:	8b 40 08             	mov    0x8(%eax),%eax
52e09c:	85 c0                	test   %eax,%eax
52e09e:	74 13                	je     0x52e0b3
52e0a0:	8b 51 2c             	mov    0x2c(%ecx),%edx
52e0a3:	39 50 2c             	cmp    %edx,0x2c(%eax)
52e0a6:	75 04                	jne    0x52e0ac
52e0a8:	3b c1                	cmp    %ecx,%eax
52e0aa:	75 0b                	jne    0x52e0b7
52e0ac:	8b 40 14             	mov    0x14(%eax),%eax
52e0af:	85 c0                	test   %eax,%eax
52e0b1:	75 f0                	jne    0x52e0a3
52e0b3:	33 c0                	xor    %eax,%eax
52e0b5:	5d                   	pop    %ebp
52e0b6:	c3                   	ret
52e0b7:	b8 01 00 00 00       	mov    $0x1,%eax
52e0bc:	5d                   	pop    %ebp
52e0bd:	c3                   	ret
52e0be:	cc                   	int3
52e0bf:	cc                   	int3
52e0c0:	55                   	push   %ebp
52e0c1:	8b ec                	mov    %esp,%ebp
52e0c3:	51                   	push   %ecx
52e0c4:	53                   	push   %ebx
52e0c5:	8b 5d 0c             	mov    0xc(%ebp),%ebx
52e0c8:	56                   	push   %esi
52e0c9:	57                   	push   %edi
52e0ca:	8b 7b 10             	mov    0x10(%ebx),%edi
52e0cd:	85 ff                	test   %edi,%edi
52e0cf:	74 31                	je     0x52e102
52e0d1:	f6 43 28 02          	testb  $0x2,0x28(%ebx)
52e0d5:	74 2b                	je     0x52e102
52e0d7:	8b 7f 08             	mov    0x8(%edi),%edi
52e0da:	8b 4b 40             	mov    0x40(%ebx),%ecx
52e0dd:	89 4d 0c             	mov    %ecx,0xc(%ebp)
52e0e0:	85 ff                	test   %edi,%edi
52e0e2:	74 4b                	je     0x52e12f
52e0e4:	8b 07                	mov    (%edi),%eax
52e0e6:	8b f1                	mov    %ecx,%esi
52e0e8:	2b f0                	sub    %eax,%esi
52e0ea:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
52e0f0:	0f b6 10             	movzbl (%eax),%edx
52e0f3:	0f b6 0c 06          	movzbl (%esi,%eax,1),%ecx
52e0f7:	3b d1                	cmp    %ecx,%edx
52e0f9:	75 10                	jne    0x52e10b
52e0fb:	85 d2                	test   %edx,%edx
52e0fd:	75 1e                	jne    0x52e11d
52e0ff:	89 7b 44             	mov    %edi,0x44(%ebx)
52e102:	5f                   	pop    %edi
52e103:	5e                   	pop    %esi
52e104:	33 c0                	xor    %eax,%eax
52e106:	5b                   	pop    %ebx
52e107:	8b e5                	mov    %ebp,%esp
52e109:	5d                   	pop    %ebp
52e10a:	c3                   	ret
52e10b:	0f b6 89 20 2a 6b 00 	movzbl 0x6b2a20(%ecx),%ecx
52e112:	0f b6 92 20 2a 6b 00 	movzbl 0x6b2a20(%edx),%edx
52e119:	2b d1                	sub    %ecx,%edx
52e11b:	75 03                	jne    0x52e120
52e11d:	40                   	inc    %eax
52e11e:	eb d0                	jmp    0x52e0f0
52e120:	8b 7f 14             	mov    0x14(%edi),%edi
52e123:	85 ff                	test   %edi,%edi
52e125:	74 05                	je     0x52e12c
52e127:	8b 4b 40             	mov    0x40(%ebx),%ecx
52e12a:	eb b8                	jmp    0x52e0e4
52e12c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
52e12f:	8b 75 08             	mov    0x8(%ebp),%esi
52e132:	6a 00                	push   $0x0
52e134:	51                   	push   %ecx
52e135:	68 f0 b0 6b 00       	push   $0x6bb0f0
52e13a:	56                   	push   %esi
52e13b:	e8 20 51 ff ff       	call   0x523260
52e140:	83 c4 10             	add    $0x10,%esp
52e143:	c6 46 11 01          	movb   $0x1,0x11(%esi)
52e147:	b8 01 00 00 00       	mov    $0x1,%eax
52e14c:	5f                   	pop    %edi
52e14d:	5e                   	pop    %esi
52e14e:	5b                   	pop    %ebx
52e14f:	8b e5                	mov    %ebp,%esp
52e151:	5d                   	pop    %ebp